你这个关键在于,
id在A表是否可能重复? ---假设是不能重复的
pid在B表是否可能重复? ---假设是能重复的,pid,class联合起来是不重复的
tid在C表是否可能重复? ---假设是能重复的,tid,group联合起来是不重复的
select aid,aname,agrade,bbclass,ccgroupfrom a,
(select pid,max(class) class from b group by pid) bb,
(select tid,max(group) group from c group by tid) cc
where aid = bbpid and aid = cctid
and Aid between 10 and 20修正楼上语句
select did,dcode,dname,ddate,cs1+cs2+cs3-dsl zhsl,je,(cs1+cs2+cs3-dsl)cje zje
from
(select max(aid) id,acode,aname,sum(asl) sl,max(bdate) date from a,b where aid = bid group by acode,aname ) d,c
where dcode = ccode ;select × from B minus select × from A
或者
select × from B where not exists (select 1 from A where Aid = Bid)索引一般分为聚集索引和非聚集索引,表的主键一般都是聚集索引,是自动创建的,而其他字段可以创建成为非聚集索引,索引相当于书本的目录,用于快速检索。创建方法如下:
CREATE NONCLUSTERED 索引名称 ON 表名(字段)
你上面的就是CREATE NONCLUSTERED INDEX_Staff_TypeId on Staff (TypeId)
CREATE NONCLUSTERED INDEX_Staff_mondId on Staff (mondId)
索引是你在查询的时候进行快速检索,是自动实现的,所以怎么使用就不用说了吧select t1列1,t1列2,t1列3,t1列4,t2列C,t2列D from 表1 t1 FULL OUT JOIN 表2 t2 on t1列1=t2列A and t1列2=t2列B
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)