【发布时间】:2020-03-20 23:39:09
【问题描述】:
case ('monthcharge' <> 0)
WHEN TRUE THEN 'monthcharge' * datediff(mm,, 'start', 'stop')
WHEN FALSE THEN case ('weekcharge' <>0)
WHEN TRUE THEN 'weekcharge' * datediff(ww, 'start', 'stop')
WHEN FALSE THEN 'daycharge' * datediff(dd, 'start', 'stop')
ELSE 0
END
ELSE 0
END 'final_total'
数据类型:
alias | datatype
daycharge | float
weekcharge | float
monthcharge | float
start | datetime
stop | datetime
【问题讨论】:
-
比较字符串和数字没有意义。
-
在 SQL Server 上运行时,是否提示语法错误?这似乎是一个很容易回答的问题。
-
CASE表达式。运行查询时是否遇到任何错误?如果是,那么是,如果不是,那么不是。
标签: sql-server datetime case alias boolean-expression