티스토리 뷰
반응형
문제.
1. [order]라는 주문 테이블에서 2번이상 주문된 메뉴와 그 메뉴의 타입을 제외해라
2. 제외된 음식들 빼고 나머지 음식들의 주문 갯수를 출력.
--select절에서 count하기
select menuno, name, (select count(*) from [order] where menuno = s.MENUNO) as '주문 개수'
from ordersheet s where type not in
(select type from ordersheet where menuno in
(select menuno from [order] group by MENUNO having count(*)>1)) ;
설명 :
1. [order]에서 menuNo로 group by해서 주문된 수가 1보다 큰 메뉴번호를 찾고 다음 select에서 그 메뉴의 type을 찾는다.
2. 메뉴 테이블에서 찾았던 타입과 같지 않은 메뉴들의 번호와 이름을 출력한다. -->1번 해결
3. 주문 갯수는 select절에서 새로운 select를 만들어서 [order]의 갯수를 카운팅한다.
4. [order]의 메뉴번호와 바깥쪽 테이블의 메뉴번호가 일치할 때 라는 조건을 달아줘서 메뉴번호에 맞는 갯수를 넣어준다.
반응형
'DB' 카테고리의 다른 글
CTE(공통 테이블 식) (MS-SQL) (0) | 2019.07.18 |
---|---|
임시테이블 사용하기 (MS-SQL) (0) | 2019.07.17 |
Select로 insert, update, delete하기! (MS-SQL) (0) | 2019.07.15 |
오라클 sysdate에서 시간 더하기 (0) | 2019.03.07 |
설계된 DB ERD 모델 다이어그램으로 뽑아내기 (0) | 2019.01.27 |
댓글