Comandos do console Rails

Para consultas padrão de seleção, onde, ordenação e limite, eu mesmo escrevo, mas para qualquer coisa mais complicada, agora pergunto à IA. Eu perguntei à IA:

“escreva uma consulta que mostre uma categoria e, em seguida, liste os 5 principais iniciadores de tópicos para essa categoria e o número de tópicos que eles iniciaram”

E imediatamente ela retornou (este é um banco de dados não-discourse):

WITH TopTopicStarters AS (
    SELECT
        c.id AS category_id,
        c.name AS category_name,
        u.name AS user_name,
        COUNT(t.id) AS num_topics_started,
        ROW_NUMBER() OVER(PARTITION BY c.id ORDER BY COUNT(t.id) DESC) AS rank
    FROM topics t
    JOIN categories c ON t.category_id = c.id
    JOIN users u ON t.user_id = u.userid
    GROUP BY c.id, u.name
)

SELECT 
    c.category_name,
    tts.user_name,
    tts.num_topics_started
FROM categories c
JOIN TopTopicStarters tts ON c.id = tts.category_id
WHERE tts.rank <= 5;

Não há como eu ter chegado a isso sem muita pesquisa no Google e tentativa e erro!