조건이 존중되는 경우에만 where 절을 추가해야합니다. 예를 들면 다음과 같습니다.
SELECT * FROM car Where <a condition>
and ( if (car.brand = 'Renault') then car.color = 'red')
내 예에서 : 브랜드가 르노라면 나는 빨간 차만 원하고 르노가없는 경우에만 다른 차를 원한다
PLSQL없이 SQL에서 이와 같은 것을 작성할 수 있습니까?
if
in a where
절을 사용할 수 없습니다 (SQL은 알지도 못함 if
). 원하는 것을 얻으려면 다음과 같은 것을 사용해야합니다.
where ... and (car.brand = 'Renault' and car.color = 'red' or car.brand <> 'Renault')
이 분리는 "브랜드가 르노라면 색상은 빨간색이어야하며 다른 브랜드에서는 중요하지 않습니다"라고 말합니다 .
당신이-당신이 말했듯이- "르노 레드 만 원하고, 르노가없는 경우에만 다른 차를 원한다"한다면 , 르노 가 없는지 확인해야합니다 :
where ...
and (car.brand = 'Renault' and car.color = 'red'
or not exists (select * from car where car.brand = 'Renault'))
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다