2016-12-28 8 views
0

このクエリを機能させようとしていますが、 'オーバーフロー'が返されます。SQL DateSerialが 'オーバーフロー'を返します

SELECT tblReadings.DateRead 
FROM tblReadings 
WHERE (((tblReadings.DateRead) Between DateSerial(Date(),Date(),1) And DateSerial(Date(),Date()-10,1))); 

「オーバーフロー」も返されます。私は、データベースを逆コンパイルし、まったく同じ結果を得た

SELECT tblReadings.DateRead 
FROM tblReadings 
WHERE (((tblReadings.DateRead)=DateSerial(2016,12,1))); 

SELECT tblReadings.DateRead 
FROM tblReadings 
WHERE (((tblReadings.DateRead)=DateSerial(Date(),Date(),1))); 

SELECT tblReadings.DateRead 
FROM tblReadings 
WHERE (((tblReadings.DateRead)=DateSerial(2016,Date(),1))); 

のみ以下は、正しい結果(2016年12月1日)を提供します。

+3

「DateSerial(Date()、Date()、1)」は何を期待していますか? (47865、47865、1)のようなものですが、これは有効なシリアル日付ではありません(47865年の47865は何月ですか?)、それらの日付から年と月を抽出し、日付全体ではありません。 –

答えて

0

ソート済みです。使用している年(Date()、Month(Date()、1など)

関連する問題