menu 라는 테이블에 id, usage 가 있습니다. id는 다른 테이블 이름이고 usage 는 사용 여부입니다. 전체 row 수는 100 개 정도입니다.
id usage
aa 1
bb 0
cc 1
dd 1
ee 0
...
...
aa, bb, cc, dd, ee 는 각각 테이블이고 같은 구조를 가지고 있습니다. 구조는 no(글 번호), writer(저자), summary(글 소개), content(글 내용) 입니다.
이제 사용 중인 테이블(usage 값이 1인 경우)에서 저자만 보고 싶을 때 쿼리 하나로 해결할 수 있는 방법이 있나요?
일단 제 생각에는 서브 쿼리를 이용해서 이렇게 해봤습니다.
select distinct writer from (select id from menu where usage=1) as t1;
결과가 나오지 않더군요. from 절에는 실제 테이블에 담긴 내용 같은 게 들어가야 한다는 느낌을 받았습니다.
보통은 php에서 union 처리하게 만듭니다만, 디비에 바로 접속해서 테스트 해 보려고 할 때는 난감하더군요.
여러 개의 테이블에서 값이 필요할 때는 union 문을 씁니다만, 테이블 수가 너무 많을 경우 일일이 쳐넣기가 난감하더군요. 특히나 다른 테이블(위 예에서 menu 테이블)에서 특정 조건을 만족하는 경우의 테이블만 가져와야 할 경우, 이걸 쿼리만 가지고 해결할 수 있는 방법이 있나요?
|