首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

念对分组以后的结果查询,有知道的吗

2013-11-05 
想对分组以后的结果查询,有知道的吗单位值1a企业14a企业26a企业17a企业45b企业12b企业23c企业3想查询上述

想对分组以后的结果查询,有知道的吗
        单位    值
1a企业1
4a企业2
6a企业1
7a企业4
5b企业1
2b企业2
3c企业3

想查询上述表中值 有1有2 但没有 4 的单位 用sql语句怎么实现 sql
[解决办法]


select 单位 from 表 where 值 in (1,2)
except
select 单位 from 表 where 值=4

[解决办法]
;with cte(id,unit,value) as
(
select 1,'a企业',1
union all select 4,'a企业',2
union all select 6,'a企业',1
union all select 7,'a企业',4
union all select 5,'b企业',1
union all select 2,'b企业',2
union all select 3,'c企业',3
)

select *
from cte a
where  unit not in(select unit from cte b where value in(1,2,4))

/*
idunitvalue
3c企业3
*/

[解决办法]
select * from (
select *
from 
(select distinct 单位 from t) a
full join (select distinct 值 from t) b
) a
left join t b on a.单位=b.单位 and a.值=b.值
where a.值=4 and b.单位 is null

热点排行