A TABLE
--------------
SEQ INT
STOCK INT
USE_1 INT
USE_2 INT
USE_3 INT
USE_1 TABLE
--------------
SEQ INT
STOCK INT
OPT_NUM INT
USE_2 TABLE
--------------
SEQ INT
STOCK INT
OPT_NUM INT
USE_3 TABLE
--------------
SEQ INT
STOCK INT
OPT_NUM INT
목적은 STOCK이 0인것을 찾아내는것입니다.
A테이블을 기준으로 STOCK이 0인것을 찾되 A TABLE의 USE_1이 1일 경우에는 A TABLE의 STOCK정보가 아닌 USE_1의 STOCK을 조건으로 0인것을 찾아야 합니다.
A TABLE
--------------
1 | 1 | 0 | 0 | 0
2 | 0 | 1 | 0 | 1
3 | 9 | 1 | 0 | 0
4 | 3 | 1 | 0 | 1
USE_1 TABLE
--------------
2 | 1 | 1
3 | 1 | 1
4 | 1 | 1
4 | 0 | 2
USE_2 TABLE
--------------
USE_3 TABLE
--------------
2 | 1 | 1
이라는 데이터가 있을때 STOCK이 0인것을 찾습니다.
SEQ가 1인것은 A TABLE에 STOCK이 1이고 USE_1,2,3에 체크가 되지 않았으므로 조건에 합당하지 않습니다.
SEQ가 2인것은 A TABLE에 STOCK이 0이지만 USE_1,3에 체크가 되어 있고 USE_1과 USE_3 이 각각 1이상으로 조건에 해당하지 않습니다.
SEQ가 3인것은 A TABLE에 STOCK이 9이지만 USE_1에 체크가 되어 있고 USE_1이 0으로 조건에 해당합니다..
SEQ가 4인것은 A TABLE에 STOCK이 3이지만 USE_1에 체크가 되어 있고 USE_1이 하나는 1이지만 또 하나는 0으로 조건에 해당합니다..
A table과 USE_1. USE_2, USE_3은 1:다 관계입니다
MYSQL5버전이나 ORACLE에서 함께 작동해야하는 쿼리문입니다.
가능할까요? |