gpt4 book ai didi

sql - t-sql 在 case 语句中将 '=' 更改为 '> or <'

转载 作者:行者123 更新时间:2023-12-02 07:11:57 27 4
gpt4 key购买 nike

这是一个大查询的一部分。

我想做的是,如果变量 @exemptionStartDate = '1900-01-01',那么只需选择所有内容,

即。 ce.ExemptionStartDate = ce.ExemptionStartDate

否则,我只想要 ce.ExemptionStartDate > @exemptionStartDate

的行

ce.ExemptionStartDate 是 DateTime 值

SELECT foobar 
WHERE foo = bar
AND ce.ExemptionStartDate = CASE WHEN @exemptionStartDate = '1900-01-01' THEN ce.ExemptionStartDate ELSE (> @exemptionStartDate) END

这可能吗?或者我是否必须做一些棘手的事情,将所有内容都变成一个长字符串,然后根据需要添加到它上面?

我遇到语法错误,不知道如何形成这样的东西。

最佳答案

不需要把事情复杂化

if @exemptionStartDate = '1900-01-01'
set @exemptionStartDate = '1753-01-01' --lowest date for datetime

然后就是

where ce.ExemptionStartDate > @exemptionStartDate

关于sql - t-sql 在 case 语句中将 '=' 更改为 '> or <',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5110743/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com