Lütfen bu konuda bana katıl, bunu açıklamak oldukça zor ve doğru terminolojiyi kullanıp kullanmadığımı bilmiyorum.SQL: Koşullu Seçim İçinde Koşullu Seçim
Oldukça karmaşık bir seçim yapmam gerekiyor. Etkin olarak, seçime filtre uygulamak için hangi alanın kullanılacağına koşullu olarak karar veren bir seçim ifadesidir. Belirli bir tarih alanı boş değilse, o alandaki değerin belirli bir aralıkta olduğunu kontrol etmeliyim.
yalancı kod:
If [Date] is not null
Get sum (table.value) for rows Date >= dateValue and Date < dateValue
Else
Get sum (table.value) for rows Int >= intValue and Int < intValue
Bulunduğum girişimi:
SELECT CASE WHEN a.Date IS NOT NULL THEN
(SUM(CASE WHEN (a.Date >= cal.Date) THEN ABS(a.Value) ELSE 0 END))
ELSE
(SUM(CASE WHEN (b.Days >= 0) THEN ABS(a.Value) ELSE 0 END)
END AS 'A'
aynı masada başka bir alan, int alanını kontrol etmek gerekir Aksi takdirde bu tarih alanı boş ise belirli bir aralık içinde olduğu
Herhangi bir fikrin var mı? Daha fazla bilgiye ihtiyacınız olup olmadığını sorun. Şimdiden teşekkürler.
Lütfen düzenlemeyi kontrol edin: – gbn
Yup. Şerefe. Başlangıçta bir veya bir deyim vardı, ancak tarih alanı veri içermesine rağmen aralığın içine düşmese bile Tamsayı alanı sürüklenecekti. Orada null bir kontrol eklemeyi düşünmedin! Ah! – Damien