sql의 datetime 데이터에 대한 논리 연산자의 특성에 혼란 스럽습니다.쿼리 선택이 비정상적으로 작동
2014-04-09 15:28:32.000
내가이 쿼리의 기준으로 검색하고있다 : 지금은 모두 날짜 범위이 같거나 사이에 떨어지면 4 개 행을 반환
select
*
from [GPSDB].[dbo].[Coordinates]
where IMEI= '354400055967495'
and RecordedDateTime >= '2014-04-09 15:28:32.000'
and RecordedDateTime <= '2014-04-09 15:39:20.000'
내 데이터베이스의 테이블 RecordDateTime에서
처럼 저장됩니다 예상대로하지만 혼란은 여기에서 시작합니다. 초일 부분에서 초 부분을 제거한 후에도 여전히 작동하고 동일한 결과를 반환합니다. 즉select
*
from [GPSDB].[dbo].[Coordinates]
where IMEI = '354400055967495'
and RecordedDateTime >= '2014-04-09 15:28'
and RecordedDateTime <= '2014-04-09 15:39:20.000'
하지만 두 번째 날짜에서 초 부분을 제거하면 첫 번째 날짜와 일치하는 시간과 함께 한 행만 반환됩니다. 이상한가? :/
도움말.
하드 해당 날짜의 첫 번째 레코드를 가져옵니다 일부 데이터. 나는 4 개의 엔트리 중 3 개의 엔트리가 15:39:00와 15:39:20 사이의 타임 스탬프를 가지고 있다고 생각한다. 그게 다야. 물론 두 번째 타임 스탬프에서 초를 제거하면 반환되지 않습니다. –
결과 집합이나 날짜 부분을 제공 할 수 있습니까? – Vardhan