Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Di panduan cepat ini, Anda mempelajari bagaimana penjelas logika bisnis membantu pengembang memahami dan bekerja dengan logika aplikasi kompleks yang diterapkan dalam SQL, kerangka kerja ORM (Object-Relational Mapping), atau langsung dalam database. Asisten menganalisis kode SQL, model ORM, atau skema database yang ada untuk menjelaskan aturan bisnis yang mendasar dan memberikan dokumentasi yang dapat ditindaklanjuti.
Mulai sekarang!
Pastikan Anda tersambung ke database dan membuka jendela editor aktif dengan ekstensi MSSQL. Koneksi ini memungkinkan @mssql peserta obrolan untuk memahami konteks lingkungan database Anda, memungkinkan saran yang akurat dan sadar konteks. Tanpa koneksi database, peserta obrolan tidak akan memiliki skema atau konteks data untuk memberikan respons yang bermakna.
Contoh berikut menggunakan AdventureWorksLT2022 database sampel, yang dapat Anda unduh dari beranda Sampel Microsoft SQL Server dan Proyek Komunitas .
Untuk hasil terbaik, sesuaikan nama tabel dan skema agar sesuai dengan lingkungan Anda sendiri.
Pastikan obrolan menyertakan awalan @mssql . Misalnya, ketik @mssql diikuti dengan pertanyaan atau perintah Anda. Ini memastikan bahwa peserta obrolan memahami Bahwa Anda meminta bantuan terkait SQL.
Memahami logika bisnis dengan GitHub Copilot
GitHub Copilot dapat membantu Anda memahami dan menjelaskan aturan bisnis yang disematkan dalam kode database, model ORM, dan kueri aplikasi. Dari prosedur tersimpan hingga kueri LINQ dan ekspresi Sequelize, GitHub Copilot menyediakan wawasan bahasa alami untuk membuat logika yang kompleks jadi lebih mudah diakses.
Berikut adalah kasus penggunaan umum dan contoh apa yang dapat Anda tanyakan melalui peserta obrolan:
Menjelaskan logika T-SQL
Gunakan GitHub Copilot untuk memahami dan menjelaskan logika Transact-SQL (T-SQL), dari prosedur tersimpan hingga pernyataan kondisional sebaris. Baik Anda meninjau aturan diskon, logika prosedural, atau kondisi pengoptimalan, GitHub Copilot dapat menganalisis dan mendokumentasikan aturan bisnis yang diterapkan dalam T-SQL.
Menjelaskan prosedur tersimpan
Explain what the `SalesLT.uspGetCustomerOrderHistory` stored procedure does and suggest ways to optimize it.
Melakukan debug pada prosedur tersimpan
Debug the `SalesLT.uspGetTopSellingProducts` stored procedure and suggest improvements.
Menjelaskan logika bisnis dalam cuplikan kode
Analyze the following SQL code snippet from my current database. Document the business rules implemented in this discount application process, including conditions for eligibility, discount rate adjustments, and any limits imposed on the discount amount. Also, provide actionable insights or suggestions to improve clarity or performance if necessary.
DECLARE @OrderTotal AS DECIMAL (10, 2) = 1500.00;
DECLARE @DiscountCode AS NVARCHAR (20) = 'DISCOUNT10';
DECLARE @DiscountPct AS DECIMAL (5, 2) = CASE WHEN @OrderTotal > 1000.00 THEN 5.0 ELSE 0.0 END;
IF @DiscountCode = 'DISCOUNT10'
BEGIN
SET @DiscountPct = CASE WHEN @DiscountPct < 10.0 THEN 10.0 ELSE @DiscountPct END;
END
DECLARE @DiscountAmount AS DECIMAL (10, 2) = (@OrderTotal * @DiscountPct / 100.0);
IF @DiscountAmount > 200.00
BEGIN
SET @DiscountAmount = 200.00;
END
SELECT @OrderTotal AS OrderTotal,
@DiscountPct AS DiscountPercentage,
@DiscountAmount AS DiscountAmount;
Menjelaskan logika ORM
Menjelaskan kueri SQLAlchemy
Explain what the following SQLAlchemy query does:
from sqlalchemy import func
top_customers = (
session.query(SalesOrderHeader.CustomerID, func.count().label("OrderCount"))
.group_by(SalesOrderHeader.CustomerID)
.order_by(func.count().desc())
.limit(10)
)
Menjelaskan kueri LINQ Kerangka Kerja Entitas
What does this Entity Framework LINQ query do? Describe how it groups customers by tier based on their total purchases.
var customerTiers = context.SalesOrderHeaders
.GroupBy(o => o.CustomerID)
.Select(g => new {
CustomerID = g.Key,
TotalSpent = g.Sum(o => o.TotalDue),
Tier = g.Sum(o => o.TotalDue) >= 10000 ? "Gold" :
g.Sum(o => o.TotalDue) >= 5000 ? "Silver" : "Bronze"
});
Menjelaskan logika bisnis dalam kueri Prisma
Analyze the logic of this Prisma query and explain how it determines which products are considered "low inventory".
const lowInventoryProducts = await prisma.product.findMany({
where: {
SafetyStockLevel: {
lt: 50
}
},
select: {
ProductID: true,
Name: true,
SafetyStockLevel: true
}
});
Menjelaskan dan memberi komentar tentang kueri Sequelize
Review and explain what this Sequelize query does. Add inline comments to clarify how it calculates total revenue per customer and filters for customers with significant spending:
const results = await SalesOrderHeader.findAll({
attributes: ['CustomerID', [sequelize.fn('SUM', sequelize.col('TotalDue')), 'TotalSpent']],
group: ['CustomerID'],
having: sequelize.literal('SUM(TotalDue) > 5000')
});
Membuat kueri SQLAlchemy untuk daftar produk
Using SQLAlchemy, generate a query to list products that have never been ordered and ask GitHub Copilot to explain the join logic and filtering behavior.
Mengambil informasi pelanggan menggunakan kueri Prisma
In Prisma, write a query that retrieves customers who placed an order in the last 30 days. Explain what the following Prisma query does. Add inline comments to clarify how the date filtering works and how recent orders are determined:
Memahami niat bisnis melalui kueri
GitHub Copilot membantu pengembang memahami bukan hanya cara kerja kueri, tetapi mengapa kueri tersebut ada. Penjelasan ini mencakup tujuan dunia nyata di balik filter data, pengelompokan, dan agregasi. Penjelasan ini sangat berguna selama onboarding, memungkinkan pengembang untuk memahami tujuan di balik laporan, gerbang logika, atau metrik sistem yang disematkan dalam kode SQL dan ORM.
Menjelaskan tujuan bisnis dalam kueri T-SQL
Describe the business goal of the following SQL query. What insight is it trying to surface?
SELECT TOP 10 CustomerID,
COUNT(*) AS OrderCount
FROM SalesLT.SalesOrderHeader
GROUP BY CustomerID
ORDER BY OrderCount DESC;
Meringkas tujuan dari kueri T-SQL
Summarize what this query is intended to achieve from a business perspective.
SELECT ProductID,
SUM(LineTotal) AS TotalSales
FROM SalesLT.SalesOrderDetail
GROUP BY ProductID
HAVING SUM(LineTotal) > 10000;
Jelaskan logika bisnis dalam prosedur tersimpan
Analyze the `SalesLT.uspGetCustomerOrderHistory` stored procedure and describe the business logic it implements.
Menjelaskan logika bisnis dalam kueri LINQ Kerangka Kerja Entitas
Explain this Entity Framework LINQ query and describe what business logic it implements:
var highValueCustomers = context.SalesOrderHeaders
.Where(o => o.TotalDue > 1000)
.GroupBy(o => o.CustomerID)
.Select(g => new { CustomerID = g.Key, OrderCount = g.Count() })
.OrderByDescending(x => x.OrderCount)
.Take(10)
.ToList();
Jelaskan asumsi bisnis dalam kueri Sequelize
Using Sequelize, explain what this query does and describe any business assumptions it makes:
const customerRevenue = await SalesOrderHeader.findAll({
attributes: ['CustomerID', [sequelize.fn('SUM', sequelize.col('TotalDue')), 'TotalSpent']],
group: ['CustomerID'],
having: sequelize.literal('SUM(TotalDue) > 5000')
});
Membagikan pengalaman Anda
Untuk membantu kami memperbaiki dan meningkatkan GitHub Copilot untuk ekstensi MSSQL, gunakan templat masalah GitHub berikut untuk mengirimkan umpan balik Anda: GitHub Copilot Feedback
Saat mengirimkan umpan balik, pertimbangkan untuk menyertakan:
Skenario yang diuji - Beri tahu kami area mana yang Anda fokuskan, misalnya, pembuatan skema, pembuatan kueri, keamanan, pelokalan.
Apa yang bekerja dengan baik - Menjelaskan pengalaman apa pun yang terasa lancar, membantu, atau melebihi harapan Anda.
Masalah atau bug - Sertakan masalah, inkonsistensi, atau perilaku yang membingungkan. Cuplikan layar atau rekaman layar sangat membantu.
Saran untuk perbaikan – Bagikan ide untuk meningkatkan kegunaan, memperluas cakupan, atau meningkatkan respons GitHub Copilot.
Konten terkait
- GitHub Copilot untuk ekstensi MSSQL untuk Visual Studio Code
- Panduan Cepat: Menggunakan chat dan saran GitHub Copilot terintegrasi
- Mulai cepat: Membuat kode
- Mulai cepat: Menggunakan penjelajah dan perancang skema
- Panduan Cepat: Menggunakan Pembuat Kueri Pintar
- Panduan Cepat: Asisten Pengoptimal Kueri
- Mulai cepat: Penganalisis keamanan
- Mulai cepat: Pembantu pelokalan dan pemformatan
- Mulai cepat: Menghasilkan data untuk pengujian dan tiruan
- Batasan dan masalah umum