我将某些日期保存为VARCHAR(25)
。我试图编写一个查询来搜索Date1,但由于日期未保存为DATE
或DATETIME
,我们没有这样做。有人可以帮忙吗?
这就是我一直在尝试的......
Select * from tblAd1
where date1 = '9/12/2016'
编辑:
我的错误 - 当我尝试ORDER BY
时,就会发生这种情况。当时它没有正确执行。
Select * from tblAd1
order by date1
答案 0 :(得分:7)
使用select2
或CAST
Convert
即使可以搜索,您也应该将日期存储在Select *
from tblAd1
where cast(date1 as date) = '2016-09-12'
数据类型中,而不是存储在DATE
中。由于您要将日期存储在Varchar
类型中,因此存储错误日期会有更多更改,从而导致将其转换为varchar
时出错。另外,这可以避免使用date
列
index