プロが教えるわが家の防犯対策術!

SQL Server 2005 EXPRESSを使って、
nvarchar型で作成されたyyyy/mm/ddの日付と
datetime型で作成されたyyyy/mm/ddの日付を比較し
WHERE '2007/05/04' > gettime()のようなSELECT文の
WHERE句を使って該当レコードを表示することが可能であれば
教えてください。

以上、宜しくお願いします。

A 回答 (1件)

CONVERT関数を使うとできます。


たとえば。
現在日時が 2007/05/22 17:48:10 だとします。
GETDATE()でその現在日時がDateTime型でとれます。
これをCONVERT関数を通して日付部分だけをnVarChar型に変換します。

CONVERT(NVARCHAR, GETDATE(), 111)

最後の「111」がフォーマットの指定で、「yyyy/MM/dd」形式で日付だけを持ってくる指定になります。

詳しくは参考URLのCONVERTの引数styleをご覧ください。

参考URL:http://msdn2.microsoft.com/ja-jp/library/ms18792 …
    • good
    • 0
この回答へのお礼

Kuppycat様

早速のご回答ありがとうございます。
ご回答が大ヒントになり解決しました。
心より厚くお礼申し上げます。

出来上がったSELECT文を公開いたします。

SELECT 名前, 文字列
FROM tbl_文字列
WHERE (文字列 >= CONVERT(NVARCHAR, 日付, 111))

【補足】
フィールド名:文字列…nvarchar型でyyyy/mm/ddを入力
フィールド名:日付…datetime型でyyyy/mm/ddを入力

以上です。

お礼日時:2007/05/23 17:25

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す