我在sql server 2005中将日期保存为VARCHAR 现在我想选择2013年之前的所有日期,我不能。
WDATE 09/01/2012 2012年8月13日
我想将这些日期与任何其他日期进行比较 我正在使用此查询:
SELECT * FROM Work_Order
WHERE WDATE < '09/02/2012'
但它减去了几天然后是几年而不是几年而不是我的情况
答案 0 :(得分:0)
如果您的列定义为VARCHAR
,则查看更新的问题,您无法执行所需操作(在某个日期之前选择记录)。您需要将其存储为DATETIME
值或CAST它,可能是这样的:
SELECT *
FROM Work_Order
WHERE CAST(WDATE as DATETIME) < CAST('09/02/2012' as DATETIME)
我自己没有SQL SERVER 2005,所以语法只是猜测。