我々は、クエリを作成しますので、一般的なクエリ期間内のSQL文を書きます:
どこ日付> = '2010-01-01' と日付<= '2010年10月1日'。
しかし、いくつかのSQL文の実際の実装ではこれに変換されます。
どこ日付> =「2010-01-01夜十二時00分00秒」と日付<=「2010年10月1日:0:00:00」、この状態を見て、おそらくいくつかは理解し、
2010年10月1日のデータを見つける、見つけるそれは、例えば、次のデータ「2010年10月1日0:00:00」(「:08:25 00 2010年10月1日」)であります。
クエリ条件を変更することができますなぜあなたは知っています:
どこ日付> =「2010-01-01」と日付<=「2010年10月1日夜11時59分59秒」或日付> =「2010-01-01」と日付<=「2010年10月2日」 。
フィールドタイプのテーブルは、日時「YYYY-MM-DD夜12時00分00秒」のストレージである
(1)、例えば、データ
2009-01-22午後9時22分22秒
2009年1月22日午後07時21分11秒
2009年-01-22午後十一時10分22秒
(2)、「の間の日付TABLE SELECT * FROMと 、2009年1月22日」と「2009年1月22日が」 2009年1月22日の結果を記録するための日付を確認したいです発見
、問題の原因(3)を
制限する「夜12時〇 〇分00秒2009年1月22日」の間に相当な条件と「の間に使用したときに、短い日付時間夜12時〇 〇分00秒デフォルトのタイプを2009- 1-22夜12時〇 〇分00秒」、そのためには、データを見つけることができません。
(4)、溶液
-プログラム:日付形式内部データベースフィールドは、
SELECT * WHERE TB(VARCHAR(10)、riqi、120)= '2009-01-22'へ変換
-スキームII:に完了日分と秒のとき
、TB SELECT * FROMどこ「の間riqi 2009-01-22夜12時00分00秒」と「2009-01-22午前23時59分59秒」
2009-01-22 21はAである:22.000:22である
21は、次のとおり:19 B 2009-01-22。11.000
C 2009-01-22 23::10:22.000
(行数は3行に影響されます)