1

次のそれぞれがレコードを返すのはなぜですか。

SELECT Name, CreatedDate 
FROM EmployeeTable 
WHERE CreatedDate < '20151214'

SELECT Name, CreatedDate 
FROM EmployeeTable 
WHERE CreatedDate > '20151214'

次のクエリはそうではありませんか?

SELECT Name, CreatedDate 
FROM EmployeeTable 
WHERE CreatedDate = '20151214'

CAST必要な結果を得るには、等値演算子でa を使用する必要がありました。

SELECT Name, CreatedDate 
FROM EmployeeTable 
WHERE CAST(CreatedDate as DATE) = '2015-12-14'

キャストを使用せずに等価演算子を使用する方法はありますか?

CreatedDateはタイプDATETIMEで、時間を含みます。

4

2 に答える 2

7

おそらくCreatedDate時刻の部分が含まれています (例: は type ですdatetime)。そのため、そのままで=は機能しません。date時間部分にキャストすると、=比較が正常に機能します。

于 2015-12-14T17:43:22.757 に答える