Prompt GitHub Copilot pour générer des requêtes SQL
GitHub Copilot transforme radicalement la façon dont les développeurs écrivent des requêtes SQL au quotidien. Intégré directement dans votre éditeur de code, cet assistant IA comprend le contexte de votre projet — schémas de tables, relations entre entités, conventions de nommage — pour générer des requêtes SQL précises et optimisées. Que vous travailliez avec PostgreSQL, MySQL, SQL Server ou SQLite, Copilot s'adapte à la syntaxe spécifique de votre moteur de base de données. L'enjeu n'est pas simplement de générer du SQL fonctionnel, mais d'obtenir des requêtes performantes, lisibles et maintenables. Un prompt bien structuré permet à Copilot de produire des jointures complexes, des sous-requêtes corrélées, des fonctions de fenêtrage et des requêtes d'agrégation qui respectent les bonnes pratiques. En fournissant le schéma de vos tables, le résultat attendu et les contraintes de performance, vous obtenez des requêtes prêtes pour la production plutôt que des ébauches à retravailler. Ce guide vous propose un prompt principal optimisé ainsi que des variantes adaptées à votre niveau, pour exploiter pleinement Copilot dans la génération de requêtes SQL fiables et performantes.
Coller dans votre IA
Collez ce prompt dans ChatGPT, Claude ou Gemini et personnalisez les variables entre crochets.
-- Schéma de la base de données :
-- Table: users (id INT PK, email VARCHAR, created_at TIMESTAMP, plan VARCHAR)
-- Table: orders (id INT PK, user_id INT FK->users.id, amount DECIMAL, status VARCHAR, created_at TIMESTAMP)
-- Table: order_items (id INT PK, order_id INT FK->orders.id, product_id INT, quantity INT, unit_price DECIMAL)
-- Table: products (id INT PK, name VARCHAR, category VARCHAR, price DECIMAL)
-- Moteur : PostgreSQL 15
-- Objectif : Générer une requête qui retourne le chiffre d'affaires mensuel par catégorie de produit pour les 12 derniers mois, avec le pourcentage de variation par rapport au mois précédent, en excluant les commandes annulées.
-- Contraintes : utiliser des CTE pour la lisibilité, des fonctions de fenêtrage pour le calcul de variation, et indexer les colonnes filtrées.
-- Format de sortie : mois, catégorie, chiffre_affaires, variation_pct
Personnaliser ce prompt avec Léa
Léa réécrit ce prompt pour ton métier et ton objectif précis — 3 questions suffisent.
Pourquoi ce prompt fonctionne
Ce prompt fonctionne parce qu'il fournit à Copilot les trois éléments essentiels : le schéma complet des tables avec les types et relations, le moteur SQL cible pour adapter la syntaxe, et une description précise du résultat attendu avec les colonnes de sortie. En spécifiant les contraintes techniques (CTE, fonctions de fenêtrage), on guide Copilot vers une implémentation conforme aux bonnes pratiques plutôt qu'une solution naïve avec des sous-requêtes imbriquées. Le format en commentaires SQL permet une intégration naturelle dans l'éditeur, où Copilot excelle à compléter le code qui suit.
Cas d'usage
Variantes
Résultat attendu
Copilot génère une requête SQL complète utilisant des CTE pour structurer le calcul en étapes claires : d'abord le chiffre d'affaires mensuel par catégorie, puis l'application de LAG() pour calculer la variation. La requête inclut les filtres sur le statut des commandes et la période, avec des alias lisibles et un ORDER BY cohérent. Vous obtenez une requête prête à exécuter, lisible par toute l'équipe et facilement modifiable.
Questions fréquentes
Comment faire pour que GitHub Copilot comprenne le schéma de ma base de données ?
Le moyen le plus efficace est de placer vos définitions de schéma (CREATE TABLE) dans un fichier SQL ouvert dans un onglet adjacent ou dans le même fichier. Copilot analyse les fichiers ouverts comme contexte. Vous pouvez aussi écrire le schéma en commentaires SQL juste avant votre requête, comme dans le prompt principal. Pour les projets utilisant un ORM (Prisma, Drizzle, SQLAlchemy), Copilot peut également inférer le schéma depuis vos fichiers de modèles s'ils sont ouverts dans l'éditeur.
Copilot peut-il optimiser une requête SQL existante qui est trop lente ?
Oui, collez votre requête lente et ajoutez un commentaire du type « -- Optimiser cette requête : elle prend 12s sur une table de 5M lignes. Index disponibles : idx_orders_created_at, idx_orders_user_id ». Copilot peut réécrire la requête en remplaçant des sous-requêtes corrélées par des jointures, en utilisant des CTE matérialisées, ou en restructurant les conditions WHERE pour mieux exploiter les index. Cependant, pour un vrai diagnostic de performance, combinez Copilot avec EXPLAIN ANALYZE sur votre moteur SQL.
GitHub Copilot gère-t-il les différences de syntaxe entre PostgreSQL, MySQL et SQL Server ?
Copilot s'adapte au moteur SQL si vous le précisez dans le prompt. Sans indication, il tend à générer du SQL standard ou du PostgreSQL. Pour obtenir une syntaxe spécifique, indiquez le moteur et sa version en commentaire (ex: « -- MySQL 8.0 » ou « -- SQL Server 2022 »). Les différences courantes qu'il gère bien incluent : LIMIT vs TOP, les fonctions de date (DATE_TRUNC vs DATEPART), les types JSONB (PostgreSQL) vs JSON_VALUE (SQL Server), et la syntaxe des CTE récursifs qui varie selon les moteurs.
Améliorez ce prompt
Passez ce prompt dans l'Optimiseur pour renforcer le contexte, les contraintes et le format attendu.
Améliore ce prompt avec l'OptimiseurCommentaires
- LéaIA
Pour améliorer la précision, précise le type de jointure entre `orders` et `order_items` (INNER JOIN si seules les commandes avec articles t'intéressent) et utilise `date_trunc('month', o.created_at)` pour l'agrégation mensuelle. Si tu souhaites inclure les catégories sans vente, remplace par LEFT JOIN sur `products`.
Termes du glossaire
📬 Recevez de nouveaux prompts chaque semaine
Rejoignez notre newsletter et ne manquez aucun prompt.
Pour aller plus loin
Prompts similaires
Mise en œuvre de la CSP avec des nonces
Prévenir les XSS avec une CSP stricte
Planifier une migration d’un monolithe vers des microservices
Migrer des monolithes de façon incrémentielle
Prompt DALL-E pour générer du code JavaScript
DALL-E, le modèle de génération d'images développé par OpenAI, n'est pas conçu pour produire du code JavaScript exécutable. Cependant, il peut jouer un rôle complémentaire précieux dans le workflow d'un développeur JavaScript. DALL-E excelle dans la création de visuels liés au développement : maquettes d'interfaces utilisateur, diagrammes d'architecture, schémas de flux de données, ou encore des illustrations pour documenter votre code. En formulant des prompts précis, vous pouvez obtenir des représentations visuelles de concepts JavaScript complexes comme les closures, le event loop ou les design patterns. Ces visuels servent ensuite de référence pour implémenter votre code, créer de la documentation technique attractive, ou concevoir des supports pédagogiques. L'approche consiste à utiliser DALL-E comme un outil de prototypage visuel rapide : générez une maquette d'interface, puis traduisez-la en composants JavaScript. Cette méthode accélère la phase de conception et réduit les allers-retours entre designers et développeurs. Dans ce guide, nous vous proposons des prompts optimisés pour tirer le meilleur parti de DALL-E dans votre processus de développement JavaScript, du prototypage d'UI à la documentation visuelle de votre code.
Créer un système de cache Redis performant et scalable
Un prompt complet pour concevoir et implémenter un système de cache Redis avec stratégies d'invalidation, gestion des erreurs et monitoring.