SQL Prompting
SQL Prompting, yapay zekâyı SQL (Structured Query Language) sorguları oluşturma, açıklama, düzeltme, optimize etme veya mevcut veri tabanı sorgularını doğal dildeki ihtiyaçlara göre dönüştürme amacıyla yönlendiren promptlama yaklaşımıdır. Kullanıcı yapmak istediği veri işlemini doğal dille açıklar; yapay zekâ ise bu isteği uygun SQL sorgusuna dönüştürür.
Örneğin: “customers tablosunda bulunan müşteriler arasından 2026 yılında en az üç kez alışveriş yapanları bulacak SQL sorgusu yaz. Müşteri adı, toplam sipariş sayısı ve toplam harcama tutarını göster. Sonuçları toplam harcama tutarına göre büyükten küçüğe sırala.”
Bu prompt, yapay zekâya hangi tabloyu kullanacağını, hangi koşulların uygulanacağını, hangi alanların gösterileceğini ve sonuçların nasıl sıralanacağını açıkça belirtmektedir.
SQL Prompting ne işe yarar?
SQL Prompting özellikle veri tabanlarında bulunan bilgilerin doğal dil kullanılarak sorgulanmasını kolaylaştırır. Başlıca kullanım alanları şunlardır:
Sorgu oluşturma: Doğal dilde tanımlanan ihtiyacı SQL sorgusuna dönüştürme.
Veri filtreleme: Belirli koşulları karşılayan kayıtları bulma.
Tabloları birleştirme: JOIN işlemleriyle farklı tablolardaki ilişkili verileri bir araya getirme.
Özetleme ve hesaplama: COUNT, SUM, AVG, MIN ve MAX gibi fonksiyonlarla verileri analiz etme.
Sorgu düzeltme: Hatalı SQL sorgularındaki sorunları tespit etme.
Sorgu optimizasyonu: Yavaş veya gereksiz karmaşık sorguların daha verimli hâle getirilmesine yardımcı olma.
Basit ve ayrıntılı SQL Prompting örneği
Basit prompt: “En çok satış yapan müşterileri SQL ile bul.”
Bu prompt belirsizdir. Hangi tabloların ve sütunların bulunduğu, “en çok satış” ifadesinin işlem sayısını mı yoksa satış tutarını mı ifade ettiği bilinmemektedir.
Daha güçlü SQL Prompting: “PostgreSQL için SQL sorgusu oluştur. customers tablosunda customer_id ve customer_name; orders tablosunda order_id, customer_id, order_date ve total_amount alanları bulunmaktadır. 2026 yılında toplam harcaması en yüksek 10 müşteriyi bul. Müşteri adı, sipariş sayısı ve toplam harcama tutarını göster. Sonuçları toplam harcamaya göre azalan biçimde sırala.”
Bu prompt veri tabanı yapısını ve istenen işlemi açıkça tanımladığı için daha güvenilir bir sorgu üretilebilir.
SQL Prompting’de veri tabanı türü neden önemlidir?
SQL’in farklı uygulamaları arasında sözdizimi farklılıkları bulunabilir. Bu nedenle promptta kullanılan veri tabanı yönetim sistemini belirtmek yararlıdır:
MySQL, PostgreSQL, Microsoft SQL Server, Oracle, SQLite gibi.
Örneğin: “PostgreSQL 17 sözdizimini kullan.”
Bu tür bir talimat, yapay zekânın başka bir SQL lehçesine özgü fonksiyonları kullanma olasılığını azaltır.
SQL Prompting için gerekli bilgiler
| Bileşen | Örnek |
|---|---|
| SQL türü | PostgreSQL |
| Tablo | orders |
| Sütunlar | customer_id, date, amount |
| İlişkiler | customers.customer_id = orders.customer_id |
| Görev | En çok harcama yapan müşterileri bul |
| Filtre | Yalnızca 2026 yılı |
| Gruplama | Müşteriye göre |
| Sıralama | Toplam harcamaya göre azalan |
| Sınır | İlk 10 müşteri |
Hata ayıklamada SQL Prompting
SQL Prompting mevcut sorguların düzeltilmesinde de kullanılabilir:
“Aşağıdaki PostgreSQL sorgusu
column reference customer_id is ambiguoushatası veriyor. Hatanın nedenini açıkla ve sorgunun amacını değiştirmeden düzelt. Yalnızca gerekli değişiklikleri yap.”
Bu kullanımda yapay zekâdan sıfırdan yeni sorgu üretmek yerine mevcut sorguyu analiz etmesi ve hata kaynağını düzeltmesi istenmektedir.
Veri analizi için SQL Prompting
SQL Prompting, işletme ve pazarlama verilerinin analizinde de kullanılabilir. Örneğin:
“
salestablosunu kullanarak 2025 ve 2026 yıllarındaki aylık satış gelirlerini karşılaştıran PostgreSQL sorgusu oluştur. Her ay için 2025 geliri, 2026 geliri, mutlak değişim ve yüzde değişimi ayrı sütunlarda göster.”
Böylece doğal dille ifade edilen bir iş analitiği problemi, doğrudan veri tabanı sorgusuna dönüştürülebilir.
Code Prompting ile farkı
Code Prompting Python, R, JavaScript ve benzeri programlama dillerinde genel kod üretimine odaklanırken SQL Prompting özellikle ilişkisel veri tabanlarında veri sorgulama ve yönetme işlemlerine odaklanır.
Örneğin:
Code Prompting: “Python kullanarak satış verilerinin aylık ortalamasını hesapla.”
SQL Prompting: “sales tablosundaki satışları aya göre gruplayarak aylık ortalama satış tutarını hesaplayan SQL sorgusu oluştur.”
Dolayısıyla SQL Prompting, Code Prompting’in veri tabanı sorgulama görevlerine özelleştirilmiş bir uygulaması olarak değerlendirilebilir.
Etkili SQL Prompting şablonu
Pratik bir yapı şu şekilde kurulabilir:
SQL lehçesi + tablo şeması + tablolar arası ilişkiler + görev + filtreler + hesaplamalar + çıktı alanları + sıralama + kısıtlar
Örneğin: “PostgreSQL kullan. customers(customer_id, city) ve orders(order_id, customer_id, order_date, amount) tabloları bulunmaktadır. 2026 yılında her şehir için sipariş sayısını, benzersiz müşteri sayısını ve toplam satış tutarını hesapla. Yalnızca toplam satış tutarı 100.000 TL’nin üzerinde olan şehirleri göster. Sonuçları toplam satış tutarına göre büyükten küçüğe sırala. Çalıştırılabilir tek bir SQL sorgusu üret.”
Kısaca: SQL Prompting, doğal dilde ifade edilen veri bulma, filtreleme, birleştirme, gruplama ve analiz ihtiyaçlarını SQL sorgularına dönüştürmek veya mevcut SQL kodlarını incelemek amacıyla kullanılan promptlama yaklaşımıdır. En iyi sonuç için yapay zekâya veri tabanı türü, tablo ve sütun adları, tablolar arasındaki ilişkiler ve beklenen çıktı açık biçimde verilmelidir.
📚 Kaynakça ve Bu Maddeye Atıf
APA Formatı: YZ Hocası. (2026). SQL Prompting. YZ Hocası Ansiklopedisi. Erişim adresi: https://yzhocasi.com/sql-prompting/
BibTeX: @misc{yzhocasi_1875, title={SQL Prompting}, url={https://yzhocasi.com/sql-prompting/}, journal={YZ Hocası Ansiklopedisi}, year={2026}}