问题描述
|
我在尝试比较SQL查询中的日期时遇到了麻烦:
SELECT restrictions,restrictions_adddate FROM restrictions WHERE id = \'555555\'
AND restrictions_adddate BETWEEN ? and ?;
这两个参数系统都以\'mm-dd-yyyy \'格式打印。我收到错误的日期格式错误,但是尝试以多种方式进行操作。感谢您的帮助,如果需要更多信息,请告诉我。谢谢。
解决方法
这适用于任何符合标准的DBMS:
SELECT restrictions,restrictions_adddate
FROM restrictions
WHERE id = \'555555\'
AND restrictions_adddate BETWEEN DATE \'2011-01-01\' and DATE \'2011-12-31\';
,这是我的偏爱:
AND restrictions_adddate BETWEEN
CONVERT(datetime,FLOOR(CONVERT(float,CAST(\'01-01-1900\' AS DATETIME))))
AND CONVERT(datetime,Getdate())));
这使您可以比较日期(减去时间戳)。
,尝试检查BOL中的“ 3”函数T-SQL参考。您应该能够使用此命令指定日期格式。