다음 중 입사일이 '1990-03-02'인 사원의 현재까지 근무한 년 … | [컴퓨터활용능력 1급 필기] 17년 1회차 기출문제 상세 페이지
1[컴퓨터활용능력 1급 필기] 17년 1회차
다음 중 입사일이 '1990-03-02'인 사원의 현재까지 근무한 년 수를 출력하기 위한 SQL 문으로 옳은 것은?
1
select datediff("yyyy", '1990-03-02', date());2
select dateadd("yyyy", date(), '1990-03-02');3
select datevalue("yy", '1990-03-02', date());4
select datediff("yy", '1990-03-02', date());해설
입사일부터 현재까지 경과한 년 수를 구하려면 두 날짜의 간격을 연 단위로 계산하는 DateDiff("yyyy", 시작일, 종료일) 형태를 사용해야 한다. select datediff("yyyy", '1990-03-02', date());는 "yyyy" 간격 지정과 인수 순서(간격, 시작일, 종료일)가 모두 올바르다.
DateAdd는 날짜에 지정 간격을 더하는 함수이고, DateValue는 텍스트를 날짜 값으로 변환하는 함수이므로 두 날짜의 차이를 구하는 용도로 쓸 수 없으며, "yy"는 DateDiff에서 사용하는 유효한 간격 인수가 아니라는 점에서도 옳지 않다.
내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.