我正在努力为以下问题找到解决方案。
date1 = 31-08-2017 12:10:00
我想把它作为字符串投射,需要单独拍摄日期(31-08-2017)。
这是我的SQL语句:
select *
from table_name
where cast(date1 as varchar) = '2017-08-30'
在这里' 2017-08-30'是字符串;当我运行上面的select命令时,它显示o记录为date1为varchar
,但时间也包括在内。
有谁能告诉我如何将日期列单独拆分为字符串?
答案 0 :(得分:0)
这将对您有所帮助: -
select * from table_name WHERE CONVERT(varchar(23), [YourDateColumn], 121)= '2017-08-30 00:00:00.000'
以上将接受日期和时间
如果您只想使用日期,请尝试以下方法: -
select * from table_name WHERE CONVERT(varchar(10), [YourDateColumn], 20)= '2017-08-30 00:00:00.000'
答案 1 :(得分:0)
如果您的date1
类型为DateTime,请尝试此操作
select *
from table_name
where CAST(date1 AS DATE) = CAST('2017-08-30' AS DATE)
答案 2 :(得分:0)
这会对你有帮助。
select *
from table_name
Where CONVERT(VARCHAR(100),date1,102) = '2017.08.30'
date1是列名值= '30-08-2017 12:10:00'
输出为30-08-2017