Sql server 合并同一表中的两个select语句?
我想创建一个查询,合并来自同一个表的两个查询的结果Sql server 合并同一表中的两个select语句?,sql-server,Sql Server,我想创建一个查询,合并来自同一个表的两个查询的结果 select (select count(distinct(Case_ID)) as expr1 from dbo.Cases) (select count(distinct(Case_ID)) as expr2 from dbo.Cases where Case_Status = 'Open') 上面生成了两组结果,我想要的是一组带有expr1的结果& expr2作为两个独立的列。稍后我将在SRSS中使用此结果。看起来您已经很接近了。这应
select
(select count(distinct(Case_ID)) as expr1 from dbo.Cases)
(select count(distinct(Case_ID)) as expr2 from dbo.Cases where Case_Status = 'Open')
上面生成了两组结果,我想要的是一组带有expr1的结果&
expr2作为两个独立的列。稍后我将在SRSS中使用此结果。看起来您已经很接近了。这应该行得通
select
count(*) as expr1,
sum(case when Case_Status = 'Open' then 1 else 0 end)
from dbo.Cases
select
(select count(distinct(Case_ID)) as expr1 from dbo.Cases)
, (select count(distinct(Case_ID)) as expr2 from dbo.Cases where Case_Status = 'Open'
可能只是缺少两个字段之间的逗号?看起来很接近。这应该行得通
select
(select count(distinct(Case_ID)) as expr1 from dbo.Cases)
, (select count(distinct(Case_ID)) as expr2 from dbo.Cases where Case_Status = 'Open'
可能只是两个字段之间缺少逗号?如果确实需要计算不同的情况:
select count(distinct case_id) as NumCases,
count(case when Case_Status = 'Open' then case_id end) as NumOpen
from dbo.Cases;
注意:如果Case_Id在Cases中是唯一的,则不需要使用distinct。但是,您在原始查询中看到了它,这表明情况可能并非如此。与常规计数或求和相比,distinct的性能更差。如果确实需要对distinct案例进行计数:
select count(distinct case_id) as NumCases,
count(case when Case_Status = 'Open' then case_id end) as NumOpen
from dbo.Cases;
注意:如果Case_Id在Cases中是唯一的,则不需要使用distinct。但是,您在原始查询中看到了它,这表明情况可能并非如此。distinct的性能比常规计数或求和差。出现以下错误:Msg 156,级别15,状态1,第4行关键字“from”附近的语法不正确。很抱歉,在Case\u Status='Open'然后是1 else 0 endyes时缺少一个括号sumdistinctcase,只是编辑了它以使其更简单。假设case_ID是主键,则不必使用distinct。出现以下错误:Msg 156,Level 15,State 1,第4行关键字“from”附近的语法不正确。很抱歉,在case_Status='Open'然后是1 else 0 endyes时缺少一个括号sumdistinctcase,只是编辑了它以使其更简单。假设case_ID是主键,则不必使用distinct。从dbo中选择countdistinctCase_ID作为expr1。在case中,从dbo中选择countdistinctCase_ID作为expr2。如果case_Status='Open'起作用,则只需要在末尾加一个括号。但是很遗憾,我没有列名?从dbo中选择select countdistinctCase_ID as expr1。从dbo中选择countdistinctCase_ID as expr2。如果Case_Status='Open'起作用,则只需要在末尾加一个括号。但是不幸的是我没有列名?