sql
-
- Mesajlar: 12
- Kayıt: Cum Haz 23, 2023 6:52 pm
- Lokasyon: Adana
- Meslek: İşletmeci
- Adınız: Atila
- Soyadınız: Ballıkaya
sql
Sql sorgusunda A ve B kolonları var. Her iki kolonda da 0 ve 0 dan büyük değerler var.
0 dan büyük satır sayısı hangi kolonda fazla ise o kolonu Order By Desc yapmak istiyorum.
0 dan büyük satır sayısı hangi kolonda fazla ise o kolonu Order By Desc yapmak istiyorum.
-
- Mesajlar: 31
- Kayıt: Sal Ağu 01, 2023 2:07 pm
- Meslek: Muhasebeci
- Adınız: tarık
- Soyadınız: sadık
Re: sql
Kolon isimlerini ve tablo adını kendinize göre değiştirin.
Kod: Tümünü seç
DECLARE @A INT,@B INT
SELECT @A=COUNT(A) FROM [AB] WHERE A>0
SELECT @B=COUNT(B) FROM [AB] WHERE B>0
IF @A<@B
BEGIN
SELECT A,B FROM [AB] ORDER BY B DESC,A desc
END
ELSE
BEGIN
SELECT A,B FROM [AB] ORDER BY A DESC,B desc
END
-
- Mesajlar: 12
- Kayıt: Cum Haz 23, 2023 6:52 pm
- Lokasyon: Adana
- Meslek: İşletmeci
- Adınız: Atila
- Soyadınız: Ballıkaya
Re: sql
Tarık ilgin için sağol
Benim sorgum zaten uzun bir sorgu
bu sorgunun 3 kez çalışması lazım.
Gereksiz şekilde zaman uzar.
Kısa sorgularda denenebilir. Farklı yöntem kullanmam gerekir.
Benim sorgum zaten uzun bir sorgu
bu sorgunun 3 kez çalışması lazım.
Gereksiz şekilde zaman uzar.
Kısa sorgularda denenebilir. Farklı yöntem kullanmam gerekir.
-
- Mesajlar: 31
- Kayıt: Sal Ağu 01, 2023 2:07 pm
- Meslek: Muhasebeci
- Adınız: tarık
- Soyadınız: sadık
Re: sql
Bu şekilde de kısa yöntemler geliştirebilirsiniz.
Kod: Tümünü seç
DECLARE @A INT,@B INT
SELECT @A=COUNT(A) FROM [AB] WHERE A>0
SELECT @B=COUNT(B) FROM [AB] WHERE B>0
SELECT * FROM [AB]
ORDER BY
CASE
WHEN @A>@B THEN A ELSE B END DESC
-
- Mesajlar: 12
- Kayıt: Cum Haz 23, 2023 6:52 pm
- Lokasyon: Adana
- Meslek: İşletmeci
- Adınız: Atila
- Soyadınız: Ballıkaya
Re: sql
Tarık bu hiç bir şeyi değiştirmez sorgu yine 3 sefer çalışır.
-
- Mesajlar: 31
- Kayıt: Sal Ağu 01, 2023 2:07 pm
- Meslek: Muhasebeci
- Adınız: tarık
- Soyadınız: sadık
Re: sql
Kod: Tümünü seç
SELECT *
FROM AB
ORDER BY
CASE
WHEN (SELECT COUNT(A) FROM AB WHERE A > 0) > (SELECT COUNT(B) FROM AB WHERE B > 0) THEN A
ELSE B
END DESC
-
- Benzer Konular
- Cevaplar
- Görüntüleme
- Son mesaj
-
- 1 Cevaplar
- 2738 Görüntüleme
-
Son mesaj gönderen islakates
-
- 0 Cevaplar
- 341 Görüntüleme
-
Son mesaj gönderen Tarkan VURAL
-
- 3 Cevaplar
- 200 Görüntüleme
-
Son mesaj gönderen ahmet967