9/11/2012 11:50:08 AM
のような値を持つ日付/時刻列を含むテーブルがあります9/11/2012 4:06:19 PM
。10/11/2012 4:06:19 PM
の日付のレコードを取得するにはどうすればよい'9/11/2012'
ですか?
9/11/2012 11:50:08 AM
のような値を持つ日付/時刻列を含むテーブルがあります9/11/2012 4:06:19 PM
。10/11/2012 4:06:19 PM
の日付のレコードを取得するにはどうすればよい'9/11/2012'
ですか?
これはMM/dd/yyyy
SELECT CONVERT(DATETIME, '9/11/2012 11:50:08 AM', 101);
入るには、dd/MM/yyyy
これを試してください:
SELECT CONVERT(DATETIME, '9/11/2012 11:50:08 AM', 103);
詳細については、CAST と CONVERT (Transact-SQL)および文字列から日時に変換する方法を参照してください。
編集:(あなたのコメントから)
クエリが次のような場合は、そのselect * from table where Date like '9/11/2012%'
ために変換する必要があります(列が であるとDate
仮定します)Date
varchar
あなたのクエリは次のように
なり9/11/2012
ますMM/dd/yyyy
:
SELECT * FROM TABLE WHERE CONVERT(DATETIME, DATE, 101) = '9/11/2012'
または、フォーマットされている場合9/11/2012
は、これを試してください:dd/MM/yyyy
SELECT * FROM TABLE WHERE CONVERT(DATETIME, DATE, 103) = '9/11/2012'
あなたの列はdatetime
列であり、特定の日付のすべての行を取得したいと思います。
SQL Server 2008 では、datetime
列を日付にキャストできます。
select *
from YourTable
where cast(DateTimeCol as date) = '2012-09-11'
yyyy-mm-dd
文字列リテラルを使用する必要がある場合は、SQL Server 2008 で日付にdateformat を使用することをお勧めします。
さらに良いのは、日付パラメーターを使用できる場合です。
select *
from YourTable
where cast(DateTimeCol as date) = @DateParam
select * from table where convert(date,date_col)='2012-09-11'