Partager via


Démarrage rapide : Utiliser le générateur de requêtes intelligent

Dans ce guide de démarrage rapide, vous allez découvrir comment l’Assistant Création de requêtes vous aide à créer des requêtes efficaces, précises et sécurisées à l’aide de SQL brut ou de votre ORM préféré. Conçu pour les développeurs code-first et data-first, il permet une génération plus rapide d’une logique prête pour la production alignée sur votre schéma de base de données connecté.

Commencez

Vérifiez que vous êtes connecté à une base de données et que vous disposez d’une fenêtre d’éditeur active ouverte avec l’extension MSSQL. Cette connexion permet au @mssql participant au chat de comprendre le contexte de votre environnement de base de données, ce qui permet des suggestions précises et adaptées au contexte. Sans connexion de base de données, le participant de conversation ne dispose pas du schéma ou du contexte de données pour fournir des réponses significatives.

Les exemples suivants utilisent l’exemple AdventureWorksLT2022 de base de données, que vous pouvez télécharger à partir de la page d’accueil Exemples microsoft SQL Server et Projets communautaires .

Pour obtenir de meilleurs résultats, ajustez les noms de table et de schéma pour qu’ils correspondent à votre propre environnement.

Assurez-vous que la conversation inclut le @mssql préfixe. Par exemple, tapez @mssql suivi de votre question ou de votre invite. Cela garantit que le participant de conversation comprend que vous demandez de l’aide liée à SQL.

Génération de requêtes

GitHub Copilot prend en charge la construction de requêtes intelligentes directement dans Visual Studio Code. Des SELECT de base aux jointures, filtres et agrégations complexes, il génère des requêtes SQL ou ORM qui suivent les meilleures pratiques et reflètent votre schéma actuel, afin de pouvoir vous concentrer sur votre logique d’application.

Voici des cas d’usage courants et des exemples de ce que vous pouvez demander via le participant de conversation :

Analyse basée sur le temps

Ces invites permettent d’analyser les tendances au fil du temps, telles que l’activité des ventes récentes, les meilleurs interprètes par période ou les comparaisons avec les moyennes historiques. GitHub Copilot peut générer des requêtes qui calculent des valeurs par rapport aux dates les plus récentes de vos données, ce qui évite les hypothèses basées sur la date système actuelle.

Liste de retour des commandes supérieures à la moyenne pour les six derniers mois

Generate a nested query to fetch orders from `SalesLT.SalesOrderHeader` where the total is above the average order amount for the last six months, relative to the most recent order date in the database (not relative to the current date).

Retournez les trois principaux clients regroupés par année

Write a query to find the top three customers by total sales in the `SalesLT.SalesOrderHeader` table, grouped by year.

Afficher le chiffre d’affaires total par client au cours des 30 derniers jours

Find the total revenue for each customer in `SalesLT.Customer` who has placed orders in the last 30 days, relative to the most recent order date in `SalesLT.SalesOrderHeader` (not relative to the current date).

Restituer les clients et leurs commandes de l'année passée

Create a Sequelize query to fetch `Customers` (`SalesLT.Customers`) along with their orders (`SalesLT.SalesOrderDetail`) and total revenue, sorted by descending revenue during the last year in the database (not relative to the current date).

Relations complexes

Utilisez ces invites pour générer des requêtes qui s’étendent sur plusieurs tables associées. Que vous joigniez des données client avec des détails de commande ou que vous générez des agrégations de revenus, GitHub Copilot aide à naviguer dans des relations complexes à l’aide du contexte de schéma pour produire des jointures et des conditions précises.

Retourner une liste de commandes supérieures à la moyenne totale

Using the actual schema of the `SalesLT.SalesOrderHeader` table, generate a nested SQL query that retrieves orders where the order total is above the average order total for the last six months. The six-month period should be calculated relative to the most recent order date in the table (not the current date).

Liste des clients classés par chiffre d’affaires

Using my current database, create a SQLAlchemy query to fetch customers along with their orders and total revenue, sorted by descending revenue.

Générer une requête pour le chiffre d’affaires total par client

Using Prisma, generate a query that joins `SalesLT.Customer`, `SalesLT.SalesOrderHeader`, and `SalesLT.SalesOrderDetail` and calculates total revenue per customer.

Retourner les dix premiers clients par ventes

In Entity Framework, write a LINQ query that returns the top 10 customers by sales in the past year using the `SalesLT` schema.

Retourner les produits non vendus par rapport aux ventes récentes

Write a TypeORM query that finds products that haven't been sold in the last six months. The six-month period should be calculated relative to the most recent order date in the table (not the current date).

Récupérer les clients en fonction du total des dépenses

Write a Django ORM query that retrieves all customers who have made purchases in the last year, sorted by total spending. The "last year" period should be calculated relative to the most recent order date in the table (not the current date).

Perspectives d'affaires

Ces invites sont conçues pour exposer des insights exploitables à partir de vos données. De l'identification des clients à risque de désabonnement à l'identification de produits invendus, GitHub Copilot peut faciliter la création d'une logique qui prend en charge les décisions stratégiques et la création de rapports, adaptée à votre base de données connectée.

Identifier les nouveaux clients

Using my current database, generate a list that shows which customers have placed their first order in the last six months, using the most recent order date in the database as the reference point.

Identifier les produits sans ventes récentes

Using my current database, generate a list that identifies products that haven't been sold in the last 12 months, using the most recent order date in the database as the reference.

Repérer les clients de grande valeur sans achat récent

Identify customers who have placed more than five orders but none in the last 90 days, using the most recent order date in the database as reference.

Retourner les cinq premiers produits en fonction du taux de retour

List the top five products with the highest return rate based on order returns or cancellations, calculated relative to the most recent order date.

Générer des données de tendance des revenus mensuels

Generate a trend of monthly revenue over the last 12 months based on `OrderDate` in `SalesLT.SalesOrderHeader`, using the most recent order date as the anchor.

Créer un rapport de fréquence de commande en déclin

Using SQLAlchemy and Pandas, create a report that identifies customers with declining order frequency over the last three quarters based on the most recent order date.

Partager votre expérience

Pour nous aider à affiner et améliorer GitHub Copilot pour l’extension MSSQL, utilisez le modèle de problème GitHub suivant pour envoyer vos commentaires : Commentaires GitHub Copilot

Lors de l’envoi de commentaires, envisagez d’inclure :

  • Scénarios testés : informez-nous des domaines sur lesquels vous vous êtes concentré, par exemple, la création de schéma, la génération de requêtes, la sécurité, la localisation.

  • Ce qui a bien fonctionné – Décrivez toutes les expériences qui ont semblé fluides, utiles ou ont dépassé vos attentes.

  • Problèmes ou bogues : incluez des problèmes, des incohérences ou des comportements déroutants. Les captures d’écran ou les enregistrements d’écran sont particulièrement utiles.

  • Suggestions d’amélioration : partagez des idées pour améliorer la facilité d’utilisation, développer la couverture ou améliorer les réponses de GitHub Copilot.