Bir query ile 80 satırlık bir tabloda TOP 10 değerleri ve diğer 70 satırın toplamını içeren sorguyu nasıl elde edebiliriz? Amacım pratik bir şekilde pie chart oluşturmak.
Top 10 yapmak kolay ancak diğer verilerin toplamını 11. satır olarak tek sorgu ile hesaplatamadım bir türlü[/code]
Örnek ekleyebilirseniz çözmeye çalışalım.
Fikir vermesi açısından şöyle söyleyeyim
Top 10 değerinde sorun yok demiştiniz. Geriye kalan 70 satırın toplamı için,
sorguda anahtar alanınız olduğunu var sayıyorum.
ID Anahtar alanın sıralamasını Azalan olarak ayarladıktan sonra Aynı işlemi Top 70 olarak uygulayın...
16-01-2019, 10:33 (En son düzenleme: 16-01-2019, 10:43 runonur.)
Ekte örnek bir dosya yükledim. Tabloda 51 kayıt mevcut. En yüksek adetli TOP10 ve geriye kalan 41 satırın toplamını tek bir satırda toplamaya çalışıyorum. Önerinize uğraştım ancak bir sonuca ulaşamadım. ID oluşturmamıştım. Buradaki başlıklar çok daha büyük bir tablodan gelen toplam değerleri içeriyor..
İlave olarak union (birleştirme) sorgusunu öneririm..
Birleştirmedeki ilk sorgu sizin top 10 sorgunuz.. Diğeri ise ilk sorguda olmayan diğer verilerin toplamına ait bir grup-toplamlı sorgu.. 'diğer' ifadesini altta göstermek için de sahte bir alan da oluşturduk..
Mevcut sorgunuzu SQL görünümünde açıp oradaki kodları aşağıdakilerle değiştirerek test edebilirsiniz..:
SQL
SELECT Arıza, Adet
FROM(
SELECT top 10 Arıza, Adet,1AS a
FROM Kaynak
ORDERBY Adet DESC
UNION
SELECT'Diğer',SUM(Adet),2
FROM Kaynak
WHERE Arıza
NOTIN(
SELECT arıza FROM(
SELECT top 10 Arıza, Adet
FROM Kaynak
ORDERBY Adet DESC))
)
AS trz
ORDERBY a, adet DESC
Bulunamayan yerleri bulmak için önce kaybolmak gerekir.
SQL göründüğünden zor değildir.. Linkteki konularla adım adım bilginizi geliştirebilir, uygulamalarınızda çözüm yaratmakta kolaylık sağlayabilirsiniz..