我试图在数据库中搜索具有特定日期的记录。我试图通过以下方式进行搜索:
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语句中是否缺少某些内容?
答案 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日的记录...相应地更改日期..