집 >데이터 베이스 >MySQL 튜토리얼 >SQL Server에서 날짜 부분만 사용하여 날짜/시간 값을 효율적으로 비교하는 방법은 무엇입니까?
SQL Server에서 날짜만 포함된 날짜/시간 값 비교
특정 날짜에 생성된 레코드에 대해 데이터베이스를 쿼리할 때 다음 사항을 고려하는 것이 중요합니다. 열의 날짜/시간 특성입니다. 등호 연산자(예: U.DateCreated = '2014-02-07')를 사용하여 날짜 부분만 있는 날짜/시간 필드를 비교하면 예상한 결과가 반환되지 않을 수 있습니다.
해결책 1: 날짜 범위 사용
날짜 부분만 사용하여 날짜/시간 필드를 정확하게 비교하려면 날짜를 사용하세요. range:
Select * from [User] U where U.DateCreated >= '2014-02-07' and U.DateCreated < dateadd(day,1,'2014-02-07')
이 접근 방식을 사용하면 시간 구성 요소에 관계없이 '2014-02-07'에 생성된 레코드를 검색할 수 있습니다.
WHERE 절에서 함수를 피하는 이유
다음에서 기능(예: 변환)을 사용하지 않는 것이 좋습니다. 두 가지 주요 이유에 대한 WHERE 절:
날짜 범위 모범 사례
날짜 및 시간 범위를 쿼리할 때 최적의 성능과 정확성을 위해서는 다음 형식을 사용하는 것이 가장 좋습니다.
WHERE col >= '20120101' AND col < '20120201'
위 내용은 SQL Server에서 날짜 부분만 사용하여 날짜/시간 값을 효율적으로 비교하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!