Udostępnij przez


Szybki start: korzystanie z konstruktora zapytań inteligentnych

Z tego przewodnika Szybki start dowiesz się, jak asystent tworzenia zapytań ułatwia tworzenie wydajnych, dokładnych i bezpiecznych zapytań przy użyciu nieprzetworzonego języka SQL lub preferowanego rozwiązania ORM. Zaprojektowana zarówno dla deweloperów kodu, jak i dla deweloperów opartych na danych, umożliwia szybsze generowanie logiki gotowej do produkcji dostosowanej do połączonego schematu bazy danych.

Wprowadzenie

Upewnij się, że masz połączenie z bazą danych i masz otwarte aktywne okno edytora z rozszerzeniem MSSQL. To połączenie umożliwia uczestnikowi czatu @mssql zrozumienie kontekstu środowiska bazy danych, umożliwiając dokładne i kontekstowe sugestie. Bez połączenia z bazą danych uczestnik czatu nie będzie miał schematu ani kontekstu danych w celu zapewnienia znaczących odpowiedzi.

W poniższych przykładach użyto przykładowej bazy danych AdventureWorksLT2022, którą można pobrać ze strony głównej Przykładów i projektów społeczności programu Microsoft SQL Server.

Aby uzyskać najlepsze wyniki, dostosuj nazwy tabel i schematów, aby dopasować je do własnego środowiska.

Upewnij się, że czat zawiera @mssql prefiks. Na przykład wpisz @mssql swoje pytanie lub polecenie. Dzięki temu uczestnik czatu rozumie, że prosi o pomoc związaną z językiem SQL.

Tworzenie zapytań

Narzędzie GitHub Copilot obsługuje inteligentną konstrukcję zapytań bezpośrednio w programie Visual Studio Code. Od podstawowych SELECT do złożonych sprzężeń, filtrów i agregacji generuje zapytania SQL lub ORM, które stosują najlepsze rozwiązania i odzwierciedlają bieżący schemat, dzięki czemu można skupić się na logice aplikacji.

Oto typowe przypadki użycia i przykłady tego, co można zadać za pośrednictwem uczestnika czatu:

Analiza oparta na czasie

Te podpowiedzi pomagają analizować trendy w czasie, takie jak ostatnia aktywność sprzedaży, najlepsi wykonawcy w danym okresie lub porównania do średnich historycznych. GitHub Copilot może tworzyć zapytania, które obliczają wartości względem najnowszych dat danych, unikając założeń opartych na bieżącej dacie systemowej.

Lista zwracanych zamówień sprzedaży powyżej średniej w ciągu ostatnich sześciu miesięcy

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).

Zwracaj trzech pierwszych klientów pogrupowanych według roku

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

Zwrot całkowitego przychodu na klienta w ciągu ostatnich 30 dni

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).

Powracający klienci i zamówienia w ciągu ostatniego roku

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).

Złożone relacje

Użyj tych monitów, aby wygenerować zapytania obejmujące wiele powiązanych tabel. Niezależnie od tego, czy łączysz dane klientów ze szczegółami zamówienia, czy tworzysz agregacje przychodów, narzędzie GitHub Copilot pomaga nawigować w złożonych relacjach przy użyciu kontekstu schematu, aby uzyskać dokładne łączenia i warunki.

Zwraca listę zamówień powyżej średniej sumy

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).

Klienci uporządkowani według przychodów

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

Generowanie zapytania o łączny przychód na klienta

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

Zwracaj dziesięciu najlepszych klientów według sprzedaży

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

Zwrot produktów niesprzedanych w porównaniu do ostatnich sprzedaży

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).

Pobieranie klientów na podstawie łącznych wydatków

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).

Szczegółowe informacje biznesowe

Te podpowiedzi są zaprojektowane, aby uzyskać praktyczne spostrzeżenia z danych. Od identyfikowania klientów zagrożonych odejściem do znajdowania niesprzedanych produktów GitHub Copilot może pomóc w tworzeniu logiki wspierającej strategiczne decyzje i raportowanie, dostosowane do twojej połączonej bazy danych.

Identyfikowanie nowych klientów

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.

Identyfikacja produktów bez ostatnich sprzedaży

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.

Identyfikowanie klientów o wysokiej wartości bez ostatnich zakupów

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.

Zwracanie pięciu najlepszych produktów na podstawie współczynnika zwrotu

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

Generowanie danych trendu przychodu miesięcznego

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.

Tworzenie raportu o malejącej częstotliwości zamówień

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.

Podziel się swoimi doświadczeniami

Aby pomóc nam udoskonalić i ulepszyć narzędzie GitHub Copilot dla rozszerzenia MSSQL, użyj następującego szablonu problemu GitHub, aby przesłać swoją opinię: GitHub Copilot Feedback

Podczas przesyłania opinii należy wziąć pod uwagę następujące kwestie:

  • Przetestowane scenariusze — daj nam znać obszary, na przykład tworzenie schematu, generowanie zapytań, zabezpieczenia, lokalizację.

  • Co się udało — opisz wszelkie doświadczenia, które przebiegły sprawnie, były pomocne lub przerosły twoje oczekiwania.

  • Problemy lub błędy — obejmują wszelkie problemy, niespójności lub mylące zachowania. Zrzuty ekranu lub nagrania ekranu są szczególnie przydatne.

  • Sugestie dotyczące poprawy — podziel się pomysłami na poprawę użyteczności, rozszerzaniem zasięgu lub ulepszaniem odpowiedzi w usłudze GitHub Copilot.