当前位置: 代码迷 >> Sql Server >> 求个简略高效的SQL语句
  详细解决方案

求个简略高效的SQL语句

热度:99   发布时间:2016-04-27 11:16:58.0
求个简单高效的SQL语句
现在有两张表表A ,其中存放的是公式,表B中存放的是每个单位按照公式审核的情况,可能是审核通过,也可能已经审核过,但是没有通过(如0表示不通过,1表示通过),也可能表B中还没有任何公式的信息(还从来没有进行审核过),现在求个查询已经完全审核通过的单位的语句,谢谢了。

------解决方案--------------------
如果你的数据不存在重复性,则如下,否则需要使用双重否定.
SQL code
create table a(fid varchar(10), fname varchar(10))insert into a values('001',  '公式A')insert into a values('002',  '公式B')create table b(divcode varchar(10),fname varchar(10),fid varchar(10), aflag int)insert into b values('0001' ,   '单位A' ,  '001' , 1)insert into b values('0001' ,   '单位A' ,  '002' , 1)insert into b values('0002' ,   '单位B' ,  '001' , 1)insert into b values('0002' ,   '单位B' ,  '002' , 0)insert into b values('0003' ,   '单位C' ,  '002' , 1)goselect fname from b where aflag = 1 group by fname having count(1) = (select count(1) from a)drop table a , b/*fname      ---------- 单位A(所影响的行数为 1 行)*/
------解决方案--------------------
探讨
请老大给个双重否定的sql,谢谢!
  相关解决方案