[]
mysql sorgusu
merhaba, aşağıdaki sorgu çalışmıyor. bunun gibi bir sorguyu nasıl yapabilirim?
SELECT *, CASE WHEN x_sutun1 = '1' OR x_sutun2 >= CURRENT_DATE() THEN 0 WHEN x_sutun1 < 1 AND x_sutun2 < CURRENT_DATE() THEN 1 END as mecit
FROM tablo1
LEFT JOIN tablo2 ON x_sutun0 = y_sutun0
LEFT JOIN tablo3 ON x_sutun0 = z_sutun0
WHERE x_sutun3 + mecit < 4
SELECT *, CASE WHEN x_sutun1 = '1' OR x_sutun2 >= CURRENT_DATE() THEN 0 WHEN x_sutun1 < 1 AND x_sutun2 < CURRENT_DATE() THEN 1 END as mecit
FROM tablo1
LEFT JOIN tablo2 ON x_sutun0 = y_sutun0
LEFT JOIN tablo3 ON x_sutun0 = z_sutun0
WHERE x_sutun3 + mecit < 4
mysql bilmiyorum ama sanırım
AND x_sutun2 < CURRENT_DATE() THEN 1 END as meci
satırı yerine
WHEN x_sutun2 < CURRENT_DATE() THEN 1 END as meci
yazarsan düzelir
AND x_sutun2 < CURRENT_DATE() THEN 1 END as meci
satırı yerine
WHEN x_sutun2 < CURRENT_DATE() THEN 1 END as meci
yazarsan düzelir
- €xpolerer (13.06.13 13:04:14)
yok düzelmedi, problem mecit in bir değişken olarak tanınmaması ve where cümlesi içinde kullanılamaması..
- katukatu (13.06.13 13:16:44)
he onun için dısına bir select koyup dene o halde
select * from (
SELECT *, CASE WHEN x_sutun1 = '1' OR x_sutun2 >= CURRENT_DATE() THEN 0 WHEN x_sutun1 < 1 AND x_sutun2 < CURRENT_DATE() THEN 1 END as mecit,
x_sutun_3
FROM tablo1
LEFT JOIN tablo2 ON x_sutun0 = y_sutun0
LEFT JOIN tablo3 ON x_sutun0 = z_sutun0
)
WHERE x_sutun3 + mecit < 4
select * from (
SELECT *, CASE WHEN x_sutun1 = '1' OR x_sutun2 >= CURRENT_DATE() THEN 0 WHEN x_sutun1 < 1 AND x_sutun2 < CURRENT_DATE() THEN 1 END as mecit,
x_sutun_3
FROM tablo1
LEFT JOIN tablo2 ON x_sutun0 = y_sutun0
LEFT JOIN tablo3 ON x_sutun0 = z_sutun0
)
WHERE x_sutun3 + mecit < 4
- €xpolerer (13.06.13 13:43:02)
1