저는 프로그래밍이 비교적 새롭습니다. 나는 테이블을 가지고 테이블에 직원이 회사에서 언제 시작했는지 보여주는 칼럼을 가지고 있습니다. 나는 프로 시저를 만들고 있는데 그 프로 시저 내에서 사용자 시작 날짜를 현재 연도로 바꾸려면 if 문이옵니다. 방금 계산 된 날짜가 오늘 이전 인 경우 다음 연도로 날짜를 변경하십시오. 질문이 완전히 명확하지 않거나 이전에 질문을 받았으면 고맙고 미안합니다.SQL에서 연도의 변경
1
A
답변
0
나는 이것이 가장 우아한 해결책이라고 생각하지 않지만, 현재 연도로 대체하기 위해 날짜를 구분할 수 있습니다. 그런 다음 case 문을 사용하여 이미 통과 한 경우 다음 연도로 변경하십시오. 코드는 다음과 같습니다.
SELECT employee_name,
CASE
WHEN CONVERT(VARCHAR,MONTH(start_date))+'/'+CONVERT(VARCHAR,DAY(start_date))+'/'+CONVERT(VARCHAR,YEAR(getdate())) < GETDATE() THEN CONVERT(VARCHAR,MONTH(start_date))+'/'+CONVERT(VARCHAR,DAY(start_date))+'/'+CONVERT(VARCHAR,YEAR(getdate())+1)
WHEN CONVERT(VARCHAR,MONTH(start_date))+'/'+CONVERT(VARCHAR,DAY(start_date))+'/'+CONVERT(VARCHAR,YEAR(getdate())) >= GETDATE() THEN CONVERT(VARCHAR,MONTH(start_date))+'/'+CONVERT(VARCHAR,DAY(start_date))+'/'+CONVERT(VARCHAR,YEAR(getdate()))
END AS anniversary_date
FROM Employees
+0
@Chris이 대답이 만족 스럽다면 청색 진드기를 부여하여 답이없는 질문 목록에서 질문을 제거하십시오. 그것이 당신이 찾고있는 것이 아니었다면,이 질문에 대한 해결책을 찾기 위해 april4181이나 다른 사용자가 알 수 있도록이 답변에 대한 의견을 통해 무엇을 개선해야하는지 설명하십시오. – mickmackusa
관련 문제
- 1. PLSQL : 연도의 처음 두 자리 변경
- 2. SQL에서 회계 연도의 날짜 형식을 지정하는 방법 phpMyAdmin의보기
- 3. SQL에서 선택할 값 변경
- 4. SQL에서 변경 스크립트 생성
- 5. SQL에서 PK 값 변경
- 6. SQL에서 경로 변수 변경
- 7. SQL에서 mongoid로 변경
- 8. Spark SQL에서 널 변경 순서 변경
- 9. 특정 연도의 항목 선택
- 10. 판매 연도의 주별로 그룹화
- 11. 현재 연도의 경과 일수
- 12. 연도의 고유 ID
- 13. DateTime 형식 연도의 일
- 14. 현재 연도의 Maven 속성
- 15. YYYY 연도의 두 자리 연도
- 16. 다른 연도의 누계 합계를 비교하십시오.
- 17. Microstrategy에서 현재 연도의 ApplySimple 수식
- 18. 어떻게 현재 연도의 매월의 파티션을
- 19. SQL에서 추적 변경 : COLUMNPROPERY 사용시 NULL 값
- 20. Oracle SQL에서 CASE 함수를 DECODE 함수로 변경
- 21. SQL에서 cte 다음에 열 순서 변경
- 22. SQL에서 데이터베이스에 저장된 로그의 변경 사항을 감지합니다.
- 23. 설치 파일 바이너리 .txt, .sql에서 동적으로 변경
- 24. SQL에서 PK 변경, FK로 인해 작동하지 않습니다
- 25. MS SQL에서 데이터베이스의 데이터 정렬 변경
- 26. SQL에서 동적 날짜 범위 만들기
- 27. SQL에서
- 28. SQL에서
- 29. SQL에서
- 30. SQL에서
절차 적으로 생각하고 있습니다. 당신이 원하는 것은 미래에 그 날짜의 다음 기념일을 발견하고 데이트를하는 것입니다. "나는 올해를 조정 해달라고하고, 그 다음에 그 날짜가 과거라면 1 년을 더하고 싶다"라고 말하지 마십시오. –
어떤 DBMS를 사용하고 있습니까? 포스트그레스? 신탁? –