SQLテーブルDateInにフィールドがあり、テーブルの日付には「01/04/2012 00:00:00」のように存在します。クエリ アナライザーでクエリを実行すると、DateIn は '2012-04-01 00:00:00.000' のようになります。'dd/mm/yyyy' 形式のテキスト ボックスから日付を渡していますが、機能していません。テキストボックスからクエリに日付変数Dim StrDateをDateTimeとして渡す関数があります。私を案内してください。
質問する
951 次
1 に答える
0
列が である場合は、またはdatetime
のような形式で保存されていると考えるのをやめてください。日付/時刻の値は、この地域の書式設定が適用されずに内部的に保存されます。これは、Management Studio が表示する方法です。次のように、日付リテラルを使用してクエリを作成する必要があります。mm/dd/yyyy
dd/mm/yyyy
yyyymmdd
SELECT <cols>
FROM dbo.table
WHERE DateIn >= '20120601'
AND DateIn < '20120626';
別のユーザーが実行した場合、マシンの地域設定が変更された場合、またはコードを別のサーバーに移動した場合は、他のすべてが機能しなくなる傾向があります。参照してください:
また、文字列区切り文字を使用していることを確認してください。あなたが言うなら:
WHERE DateIn > 01/06/2012
それは次と同じです:
WHERE DateIn > (1 divided by 6 divided by 2012)
整数演算により、次の結果が得られます。
WHERE DateIn > 0
SQL Server では、日付/時刻が 0 である'1900-01-01'
ため、この句はすべての非 NULL 行を返します。
于 2012-06-26T13:10:34.960 に答える