Commandes de la console Rails

Pour les requêtes standard de sélection, de filtre, de tri et de limite, je les écris moi-même, mais pour tout ce qui est plus compliqué, je demande maintenant à l’IA. J’ai demandé à l’IA :

« écris une requête qui montre une catégorie, puis liste les 5 meilleurs créateurs de sujets pour cette catégorie et le nombre de sujets qu’ils ont créés »

Et immédiatement, elle m’a renvoyé (ceci n’est pas une base de données 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;

Aucun moyen que j’aurais pu trouver ça sans beaucoup de recherches sur Google et d’essais et erreurs !