2011-01-25 6 views
2

私はSQLを使用していますが、datetimeフィールドを持つ2つの列があります。
私がしたいことは、これらのdatetimeフィールドの日付部分を比較し、異なるものがあるかどうかを確認することです。例えばSQLの日時の部分を比較します

  col1      | col2 
'2010-01-02 23:58:00.000'   | '2010-01-03 06:21:00.000' 
'2010-01-04 16:03:00.000'   | '2010-01-04 21:34:00.000' 

行1の日付が異なっているが、私は//が、これはそれらが同じである他の異なるdatediff(day,col2,col1) < 1のようなものを考えています

同じ行2です。

日付を解析する方法がわからない場合は、2つのフィールドを比較してください。

+2

をどのデータベース? –

答えて

2
abs(datediff(day, col1, col2)) > 0 
2

これは、多くのデータベースで動作するはずです:

DATE(col1) = DATE(col2) 
+0

ダーン!それに私を打つ。 http://www.w3schools.com/sql/func_date.asp – David

+0

Oracleのdate(col1)のORA-00936です。 –

1

を "SQLを使用して" と私はあなたがSQL Serverを意味想定しています。 col1とcol2には別の日であるすべてのレコードの場合

、あなたはDatePart機能をチェックしてください!=

SELECT * 
FROM TBL 
WHERE DateDiff(d, col1, col2) != 0 
0

は、SQL Server(バージョン2008以上)を使用している場合は、DATE形式にキャストすることにより、日時フィールドのちょうど日付部分を比較することができますについては

CAST(MyDate AS DATE) >= CAST(TheOtherDate AS DATE)