我得到了一个查询,它返回地址,并完成了上周每个地址的订单。我需要在结果集中插入三个虚拟值。
select ADDRESS
,SUM(Case When OrderDate >= dateadd(dd,(datediff(dd,-53690,getdate()-1)/7)*7,-53690)
Then 1
Else 0
End) as Completed
from orders
GROUP BY ADDRESS
order by ADDRESS
结果
地址
地址1-3
地址2-3
地址3-3
地址4-3
所有这些值都来自数据库,但我想插入三行硬编码的值
预期结果
地址
地址1-3
地址2-3
地址3-3
地址4-3
虚拟1-0
虚拟2-0
虚拟3-0
不成功的尝试
select ADDRESS
,SUM(Case When OrderDate >= dateadd(dd,(datediff(dd,-53690,getdate()-1)/7)*7,-53690)
Then 1
Else 0
End) as Completed
from orders
union all
select
'dummy1', 0
GROUP BY ADDRESS
order by ADDRESS
发布于 2014-06-27 00:32:25
试一下-
select ADDRESS
,SUM(Case When OrderDate >= dateadd(dd,(datediff(dd,-53690,getdate()-1)/7)*7,-53690)
Then 1
Else 0
End) as Completed
from orders
union all
select
'dummy1' AS Address, SUM(0) AS Completed
GROUP BY ADDRESS
order by ADDRESS
发布于 2014-06-27 00:33:04
发布于 2014-06-27 01:20:42
select ADDRESS
,SUM(Case When OrderDate >= dateadd(dd,(datediff(dd,-53690,getdate()-1)/7)*7,-53690)
Then 1
Else 0
End) as Completed
from orders
GROUP BY ADDRESS
UNION
select 'dummy1', 0
UNION
select 'dummy2', 0
UNION
select 'dummy3', 0
order by ADDRESS
https://stackoverflow.com/questions/24435666
复制相似问题