SQL Sorgularını Yapay Zeka ile Oluşturun
Karmaşık SQL sorgularını Türkçe açıklamalarla kolayca oluşturun. Yapay zeka destekli araçlarımızla veritabanı sorgularınızı optimize edin.
Nasıl Çalışır?
Sorgunuzu Türkçe Yazın
SQL Kodunu Alın
SELECT
u.urun_adi,
k.kategori_adi,
COUNT(*) as satis_adedi,
SUM(s.miktar) as toplam_miktar,
SUM(s.miktar * s.birim_fiyat) as toplam_tutar
FROM satislar s
JOIN urunler u ON s.urun_id = u.id
JOIN kategoriler k ON u.kategori_id = k.id
WHERE s.satis_tarihi >= DATE_SUB(CURRENT_DATE, INTERVAL 3 MONTH)
GROUP BY u.urun_adi, k.kategori_adi
ORDER BY satis_adedi DESC
LIMIT 10
Örnek Kullanım Alanları
1. Satış Analizleri
SELECT
b.bolge_adi,
COUNT(DISTINCT s.musteri_id) as musteri_sayisi,
COUNT(s.satis_id) as satis_adedi,
SUM(s.tutar) as toplam_satis,
AVG(s.tutar) as ortalama_satis
FROM satislar s
JOIN musteriler m ON s.musteri_id = m.id
JOIN bolgeler b ON m.bolge_id = b.id
WHERE s.satis_tarihi >= DATE_SUB(CURRENT_DATE, INTERVAL 6 MONTH)
GROUP BY b.bolge_adi
ORDER BY toplam_satis DESC
2. Müşteri Analizleri
WITH musteri_degerleri AS (
SELECT
m.musteri_id,
m.musteri_adi,
COUNT(*) as siparis_sayisi,
SUM(s.tutar) as toplam_harcama
FROM musteriler m
JOIN satislar s ON m.musteri_id = s.musteri_id
GROUP BY m.musteri_id, m.musteri_adi
)
SELECT
CASE
WHEN toplam_harcama > 10000 THEN 'Premium'
WHEN toplam_harcama > 5000 THEN 'Gold'
ELSE 'Standard'
END as segment,
COUNT(*) as musteri_sayisi,
AVG(toplam_harcama) as ortalama_harcama
FROM musteri_degerleri
GROUP BY
Daha Fazla Bilgi İçin
Veritabanı Desteği
1. MySQL Sorguları
SELECT
DATE_FORMAT(islem_tarihi, '%Y-%m') as ay,
COUNT(*) as islem_sayisi,
FORMAT(SUM(tutar), 2) as toplam_tutar,
FORMAT(AVG(tutar), 2) as ortalama_tutar
FROM islemler
GROUP BY ay
ORDER BY ay DESC
2. PostgreSQL Sorguları
SELECT
to_char(islem_tarihi, 'YYYY-MM') as ay,
COUNT(*) as islem_sayisi,
to_char(SUM(tutar), '999G999G999D99 ₺') as toplam_tutar,
to_char(AVG(tutar), '999G999D99 ₺') as ortalama_tutar
FROM islemler
GROUP BY ay
ORDER BY ay DESC
İleri Düzey Özellikler
1. Karmaşık Sorgular
WITH aylik_satis AS (
SELECT
DATE_TRUNC('month', s.satis_tarihi) as ay,
k.kategori_adi,
SUM(s.tutar) as toplam_satis
FROM satislar s
JOIN urunler u ON s.urun_id = u.id
JOIN kategoriler k ON u.kategori_id = k.id
GROUP BY ay, k.kategori_adi
)
SELECT
kategori_adi,
toplam_satis,
LAG(toplam_satis) OVER (PARTITION BY kategori_adi ORDER BY ay) as onceki_ay,
ROUND(
((toplam_satis - LAG(toplam_satis) OVER (
PARTITION BY kategori_adi ORDER BY ay
)) / LAG(toplam_satis) OVER (
PARTITION BY kategori_adi ORDER BY ay
) * 100),
2
) as buyume_yuzdesi
FROM aylik_satis
ORDER BY ay DESC, toplam_satis DESC
Sıkça Sorulan Sorular
S: Tüm veritabanları için kullanılabilir mi?
C: Evet, MySQL, PostgreSQL, SQL Server ve Oracle desteklenmektedir.
S: Türkçe karakter desteği var mı?
C: Evet, tam Türkçe karakter desteği mevcuttur.