Warunkowe wykonanie WHERE'a dla SELECT'a

0

Witam programuje trochę PL/SQL. Mam problem z jednym zapytaniem. Otóż chcę wyciągnąć select'em informacje z bazy. Z tym, że zależy mi na tym aby ostatni warunek był brany pod uwagę tylko dla określonego statusu (z selecta).

 
SELECT d.id, d.status, p.lp, p.nazwa 
FROM dokumenty d, pozycje p
WHERE d.id = p.dok_id
AND mod(p.lp,2) = 0 

Czy da się wstawić do ostatniego warunku jakiś IF?
np. AND IF(d.status = 'K', "mod(p.lp,2) = 0)

1

Coś w ten deseń:

SELECT d.id, d.status, p.lp, p.nazwa 
FROM dokumenty d JOIN pozycje p
ON d.id = p.dok_id
WHERE Case When d.status='k' then mod(p.lp,2) else 0 end =0
0

where ((d.status = 'K' and mod(p.lp,2) = 0) or d.status <> 'K') and/or inne warunki

0

Rozwiązałbym to w taki sam sposób jak massther.

0

Dziękuję za pomoc :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1