안녕하십니까 질문을 하나드려서
조금 쉽게 답을 얻고자 ㅡㅠ 이렇게 문을 다시 두드립니다.
검색으로는 도저히 못 찾겠더라구요..ㅡㅠ
BABO_TABLE
========================
TIME DROP ID
========================
8 12 A
8 7 A
8 6 A
9 11 B
9 7 B
9 10 B
10 12 C
10 9 C
10 13 C
========================
데이타가 위와 같습니다. 어떤 조건을 줘야 TIME이 8,9,10 모두가 DROP>10인 A를 추출해낼 수 있을까요??
SELECT * FROM BABO_TABLE (TIME =8 and DROP>10) and (TIME =9 and DROP>10) and (TIME =10 and DROP>10)
이렇게 쿼리를 주면 당연히 안되더라구요..시간이 8인놈이랑 9인놈이랑 10인놈이 모두 and로 걸려버리니 당연히 결과는 없을 수 밖에 없구요..ㅡㅠ
SELECT * FROM (
SELECT * FROM (
SELECT * FROM BABO_TABLE WHERE TIME =8 and DROP>10
) a
WHERE a.TIME=9 and a.DROP>10
) b
WHERE b.TIME=10 and b.DROP>10
이런식으로 하면 당연히 가장안에 있는 쿼리에서 TIME=8로 다 걸러져 버리니 다음에 TIME=9에 조건에서는 당연히 결과가 없네요
한번할때마다 한번씩 조인땡겨서 뽑는 방식을 생각을하고 있는데,,너무 쿼리가 복잡해져서 조금 쉽게 하는방법이 없을까 해서요.ㅡㅠ |