USED_GOODS_BOARD와 USED_GOODS_REPLY 테이블에서 2022년 10월에 작성된 게시글 제목, 게시글 ID, 댓글 ID, 댓글 작성자 ID, 댓글 내용, 댓글 작성일 조회
- 댓글 작성일 기준 오름차순, 댓글 작성일이 같은 경우 게시글 제목 기준 오름차순 정렬
USED_GOODS_BOARD
와USED_GOODS_REPLY
테이블을 게시글 ID인BOARD_ID
기준으로INNER JOIN
2022-10-01 ~ 2022-10-31
에 작성된 게시글만 필터링CREATED_DATE
를날짜
만 나오게 출력(현재는 시간과 함께 추출되고 있음)
-- MYSQL SELECT TITLE, B.BOARD_ID, REPLY_ID, R.WRITER_ID, R.CONTENTS, DATE_FORMAT(R.CREATED_DATE, '%Y-%m-%d') AS CREATED_DATE FROM USED_GOODS_BOARD AS B INNER JOIN USED_GOODS_REPLY AS R ON B.BOARD_ID = R.BOARD_ID WHERE B.CREATED_DATE BETWEEN '2022-10-01' AND '2022-10-31' ORDER BY R.CREATED_DATE, TITLE;
-- ORACLE SELECT TITLE, B.BOARD_ID, REPLY_ID, R.WRITER_ID, R.CONTENTS, TO_CHAR(R.CREATED_DATE, 'YYYY-MM-DD') AS CREATED_DATE FROM USED_GOODS_BOARD B INNER JOIN USED_GOODS_REPLY R ON B.BOARD_ID = R.BOARD_ID WHERE B.CREATED_DATE BETWEEN TO_DATE('2022-10-01', 'YYYY-MM-DD') AND TO_DATE('2022-10-31', 'YYYY-MM-DD') ORDER BY R.CREATED_DATE, TITLE;
MYSQL
DATE_FORMAT : 날짜, 시간 값을 지정된 형식의 문자열로 변환
DATE_FORMAT(date_value, '%Y-%m-%d %H:%i:%s')
- 숫자 포맷팅 지원X
- 날짜, 시간 값에만 적용 가능
날짜와 문자열 직접 비교 가능
-- MySQL에서 날짜 문자열을 직접 비교할 수 있습니다. SELECT * FROM TABLE_NAME WHERE CREATED_DATE BETWEEN '2022-10-01' AND '2022-10-31';
- WHY? 날짜 문자열을 자동으로 날짜 형식으로 변환하여 비교할 수 있는 제공
ORACLE
TO_CHAR : 날짜, 숫자 또는 기타 데이터 유형을 지정된 형식의 문자열로 변환
TO_CHAR(date_value, 'YYYY-MM-DD HH24:MI:SS')
- 숫자도 형식화 가능, 숫자 포맷팅 지원O
- 날짜, 숫자에 적용 가능
- Y%와 같은
C스타일
형식 지정자 사용X문자열을 날짜로 변환해야 날짜 문자열 비교 가능
-- Oracle에서는 TO_DATE를 사용하여 문자열을 날짜로 변환해야 합니다. SELECT * FROM TABLE_NAME WHERE CREATED_DATE BETWEEN TO_DATE('2022-10-01', 'YYYY-MM-DD') AND TO_DATE('2022-10-31', 'YYYY-MM-DD');