INSERT INTO NOTICE(ID,REGDATE,HIT,WRITER_ID) VALUES(8,SYSDATE, 3 ,'Anon')
SELECT COUNT(ID) FROM NOICE;
SELECT WRITER_ID, COUNT(ID) AS COUNT FROM NOTICE GROUP BY WIRTER_ID
FROM -> CONNECT BY -> WHERE -> GROUP BY -> HAVING -> SELECT -> ORDER BY
-회원 별 게시글 수를 조회, 단 게시글이 두개 이하인 레코드만 출력
GROUP BY에 조건을 쓰기 위해선 HAVING을 사용해야하다 (WHERE 안됨)
SELECT WRITER_ID, COUNT(N.ID) FROM NOTICE N
GROUP BY WRITER_ID
HAVING COUNT(N.ID) >= 2
SELECT ROW_NUMBER() OVER (ORDER BY HIT), ID, TITLE , WRITER_ID, REGDATE, HIT FROM NOTICE;
hit로 정렬 한 후 오름차순으로 정렬된 숫자 컬럼을 보여줌
SELECT RANK() OVER (ORDER BY HIT), ID, TITLE, WRITER_ID ,REGDATE, HIT FROM NOTICE
HIT순서대로 정렬된 등수 컬럼을 표시함. (중복값 있음)
SELECT RANK() OVER (ORDER BY HIT), ID, TITLE, WRITER_ID ,REGDATE, HIT FROM NOTICE
HIT순서대로 정렬된 등수 컬럼을 표시함. (중복값 있음)
-> 1 2 3 4 4 6 7 7 4등 2이니 다음은 6등
논리 실행 순세어 맞지 않는 쿼리를 할때는 서브쿼리를 이용한다.
원하는 것을 먼저 찾고(정렬된 결과) 그 결과를 순위별로 출력함
SELECT * FROM MEMBER WHERE AGE >= (SELECT AVG(AGE) FROM MEMBER)