월의 첫날을 찾기 위한 간소화된 SQL 접근 방식
SQL에서 날짜 작업을 하려면 해당 월의 1일을 추출해야 하는 경우가 많습니다. 여러 가지 방법이 있지만 이 향상된 기술은 우아함과 효율성을 모두 제공합니다.
최적화된 SQL 쿼리
다음 쿼리는 DATEADD
및 DATEDIFF
함수를 활용하여 해당 월의 첫째 날을 정확히 찾아냅니다.
<code class="language-sql">SELECT DATEADD(month, DATEDIFF(month, 0, @mydate), 0) AS FirstDayOfMonth</code>
자세한 설명
DATEDIFF(month, 0, @mydate)
: 신기원(보통 1900년 1월 1일)과 입력 날짜(@mydate
) 사이의 개월 수를 계산합니다. 이는 효과적으로 epoch로부터 월 오프셋을 제공합니다.DATEADD(month, <month offset="">, 0)
: 계산된 월 오프셋을 에포크(1900년 1월 1일)에 추가합니다. 결과는 @mydate
에 해당하는 달의 첫날입니다.주요 혜택
DATEADD
은 일반적으로 고도로 최적화되어 있어 더 복잡한 맞춤형 솔루션에 비해 실행 속도가 빠릅니다.실제예
@mydate
이 '2023-04-15'인 경우 쿼리는 '2023-04-01'을 반환하여 2023년 4월 1일을 올바르게 식별합니다.
위 내용은 SQL에서 매월 첫날을 효율적으로 선택하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!