有个表 ID dateTimeA dateTimeB dateTimeC
我想查出这样的结果集,每条数据显示 ID 大于当前时间的个数
由于自己想的方法感觉效率比较低,求相对好点的办法,我的想法是:先查出datetimeA大于当前时间 再查datetimeB大于...最后把几个结果集合并,谢谢大家!
你可以使用Case When 的
Select ID, Case when dateTimeA>now then 1 else 0 end ,把三个字段比较的结果加起来就是个数了。
我就不详细写完了。
额,非常thankyou,长久不写代码人都傻了,结贴
---依据标准日期,算出应收回款比例总和[日期小于当前日期的] update #t_report set sum_rate=(case when 标准完工到货款日期<GETDATE() then rate1 else 0 end +case when 标准初验日期<GETDATE() then rate2 else 0 end+case when 标准终验日期<GETDATE() then rate3 else 0 end+case when 标准结项日期<GETDATE() then rate4 else 0 end)