sql-server – 在SQL Server中处理日期

前端之家收集整理的这篇文章主要介绍了sql-server – 在SQL Server中处理日期前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在asp.net上的一个网站上工作.我从网页获取日期,然后根据用户输入我想从sql Server数据库获取结果(使用存储过程).

问题是我只能从这个格式2016-10-08获取日期,这是类型字符串.但是在数据库中,我有一个类型为datetime的列,格式为2016-10-08 17:38:00.000.

我正在使用此查询进行搜索,但它不起作用.

select * 
from table 
where acceptedDate like @sDate+ '%';

其中sDate是存储过程的输入参数.请帮忙.谢谢

解决方法

不要将日期作为字符串传递.将它们作为DateTime传递.
.Net DateTime maps directlysql Server的 DateTime.您所要做的就是将字符串解析为.Net代码中的DateTime结构,并将其作为参数传递给存储过程.
搜索特定日期并忽略DateTime的时间部分,最好使用> =和<在你的sql中:
select * 
from table 
where acceptedDate >= @Date
AND acceptedDate < DATEADD(DAY,1,@Date);

猜你在找的MsSQL相关文章