读书人

求个简略高效的SQL语句

发布时间: 2012-09-16 17:33:17 作者: rapoo

求个简单高效的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,谢谢!

读书人网 >SQL Server

热点推荐