Oracle 기준으로, 가입 후 한 달 쿠폰의 만료일을 구하는 다음 S… | [SQLD] SQL 개발자 기출유형 모의고사 9회 상세 페이지
1[SQLD] SQL 개발자 기출유형 모의고사 9회
Oracle 기준으로, 가입 후 한 달 쿠폰의 만료일을 구하는 다음 SQL의 실행 결과로 옳은 것은?[회원]
| 회원번호 | 가입일 |
|---|---|
| 1 | 2026-01-31 |
| 2 | 2026-02-28 |
| 3 | 2026-03-15 |
| 4 | 2026-04-30 |
| 5 | 2026-05-30 |
SELECT 회원번호,
TO_CHAR(ADD_MONTHS(가입일, 1), 'YYYY-MM-DD') AS 만료일
FROM 회원
ORDER BY 회원번호;1
| 회원번호 | 만료일 |
|---|---|
| 1 | 2026-03-02 |
| 2 | 2026-03-30 |
| 3 | 2026-04-14 |
| 4 | 2026-05-30 |
| 5 | 2026-06-29 |
2
| 회원번호 | 만료일 |
|---|---|
| 1 | 2026-02-28 |
| 2 | 2026-03-31 |
| 3 | 2026-04-15 |
| 4 | 2026-05-31 |
| 5 | 2026-06-30 |
3
| 회원번호 | 만료일 |
|---|---|
| 1 | 2026-02-28 |
| 2 | 2026-03-28 |
| 3 | 2026-04-15 |
| 4 | 2026-05-30 |
| 5 | 2026-06-30 |
4
| 회원번호 | 만료일 |
|---|---|
| 1 | 2026-03-03 |
| 2 | 2026-03-31 |
| 3 | 2026-04-15 |
| 4 | 2026-05-31 |
| 5 | 2026-06-30 |
해설
ADD_MONTHS 는 입력일이 그 달의 말일이면 결과도 결과 월의 말일로 맞추므로 2월 28일은 3월 31일, 4월 30일은 5월 31일이 된다.
1월 31일처럼 결과 월에 같은 날이 없으면 그 달 말일인 2월 28일이 되고, 말일이 아닌 3월 15일·5월 30일은 날짜만 그대로 옮겨진다.
- 말일 규칙을 빼고 같은 날짜로만 옮기면 3월 28일·5월 30일이 나온다.
- 존재하지 않는 2월 31일을 넘겨 3월로 보내지 않고 2월 말일에서 멈춘다.
- 한 달 더하기는 30일 더하기가 아니므로 3월 2일 같은 값이 나오지 않는다.
오류나 개정된 내용이 보이면 알려주세요
이어서 풀어보기
[SQLD] SQL 개발자 기출유형 모의고사 9회 50문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요비슷한 기출
- 다음sql결과에알맞는쿼리을작성하시오. selectname,scorefrom성적(1)by(2)(3) 1.order 2.score 3.desc2022년 정보처리기사실기 1회차
- 다음sql결과에알맞는답을작성하시오. [table] selectcount(col2) fromtable wherecol1in(2,3)orcol2in(3,5); 42022년 정보처리기사실기 2회차
- sql문에서괄호안에알맞은답안을작성하시오. ('이름'이란컬럼에'이'로시작하는문자열을'내림차순'하는쿼리결과내용입니다.) select....from...where이름l2021년 정보처리기사실기 2회차