使用SQL查找特定日期

时间:2015-03-16 17:34:27

标签: sql datetime ms-access

我试图在数据库中搜索具有特定日期的记录。我试图通过以下方式进行搜索:

SELECT * 
FROM TABLE_1
WHERE CAL_DATE=01/01/2015

SELECT * 
FROM TABLE_1
WHERE CAL_DATE='01/01/2015'

我正在使用Access数据库,在表格中,日期以相同的格式显示(01/01/2015)。我在SQL语句中是否缺少某些内容?

4 个答案:

答案 0 :(得分:2)

以下任何选项均可使用:

直接在查询中设置日期格式。

SELECT * 
FROM TABLE_1
WHERE CAL_DATE=#01/01/2015#;

DateValue函数会将字符串转换为日期。

SELECT * 
FROM TABLE_1
WHERE CAL_DATE=DateValue('01/01/2015');

CDate函数会将值转换为日期。

SELECT * 
FROM TABLE_1
WHERE CAL_DATE=CDate('01/01/2015');

DateSerial函数将返回给定年,月和日的日期。

SELECT * 
FROM TABLE_1
WHERE CAL_DATE=DateSerial(2015, 1, 1);

有关上述功能的更多信息,请参阅以下页面:techonthenet.com

答案 1 :(得分:0)

尝试在过滤器上使用CDATE功能:

WHERE CAL_DATE = CDATE('01/01/2015')

这将确保您的输入是日期数据类型,而不是字符串。

答案 2 :(得分:0)

SELECT *来自Table1 WHERE(CDATE(ColumnDate)BETWEEN#03/26/2015#AND#03/19/2015#)

如果这样有效..投票给它..我们使用上面的查询来搜索从3月26日到19日的记录...相应地更改日期..

答案 3 :(得分:-2)

SELECT *来自Table1 WHERE(CDATE(ColumnDate)BETWEEN#03/26/2015#AND#03/19/2015#)

如果这样有效..投票给它..我们使用上面的查询来搜索从3月26日到19日的记录...相应地更改日期..