MSSQL 仅当传递 Boolean_expression 时才更改返回值
我想做这样的事情
SELECT (if T.EndTime = '00:00:00' THEN '23:59:59' ELSE T.EndTime) AS EndTime from Table AS T
,我知道解决方案应该很简单,但我只是找不到办法让它发挥作用
i want to do something like this
SELECT (if T.EndTime = '00:00:00' THEN '23:59:59' ELSE T.EndTime) AS EndTime from Table AS T
i know the solution should be simple but i just cant find away to make it work
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您需要一个案例:
http://msdn.microsoft.com/en-us/库/ms181765.aspx
You want a CASE:
http://msdn.microsoft.com/en-us/library/ms181765.aspx
CASE
是您正在寻找的内容:CASE
is what you are looking for:如果列 T.EndTime 的数据类型为
DateTime
,您可能需要先将值转换为字符串。所以,查询会是这样的。 Convert 函数中使用的值 8 返回格式为hh:mi:ss
的日期时间。您可以在 MSDN 网站 中找到投射或转换的格式列表。If the column T.EndTime is of data type
DateTime
, you might want to convert the value to string first. So, the query would be something like this. Value 8 used in Convert function returns datetime in the formathh:mi:ss
. You can find the list of formats for Cast or Convert at MSDN website.