tnjk.net
当前位置:首页 >> 一个关于sql多表联合查询的问题 >>

一个关于sql多表联合查询的问题

通过contract_project做中间表就行: select * from contract_project a left join project b on a.projectId = b.projectId left join contract c on a.contractId = c.contractId 前提是contract_project要大而全,包含所有的pid和cid,不然不行

Select 单据主表.id,客户名称表.客户名称,单据编号,单据备注,本次欠款 from 单据主表 left join 客户名称表 on 单据主表.客户id=客户名称表.id left join 单据名称表 on 单据主表.单据类型=单据名称表.单据名称id

假定3张表分别是normal_cus,vip_cus,ent_cus, 这3张表都包含字段:username, 可以这么写SQL: select username,'normal_cus' as tab_name from normal_cus where username='张三' union select username,'vip_cus' as tab_name from vip_cus whe...

所有信息,无论你使用什么关联都可以,join/ left join/right join/full join 从你写的表结构看,表D表示个A表、B表、C表的关系(除非表D还有其他三张表没有的信息),不需要加入关联的 select * from A left join B on A_user_id=B_id left joi...

既然没有任何关联,分开查询就好了,放在一起查询又怎么显示呢。 select 字段 from (select * from shopa where place=1) as shopa,(select * from shopb where place=1) as shopb

带有中国的所有记录(ID=3时,只显示是中国的一条): select a.* from a inner join b on a.id=b.aid where b.tagname='中国' 只有有香港,所属ID全都不显示: select a.* from a inner join b on a.id=b.aid where b.tagname='中国' and not e...

不知道是不是这个意思? select a.id , ---或者其他个人信息 count(d.xx_id),--应有考勤数量 sum(nvl(d.countid,0)) --实际考勤数量 from a , (select b.xx_id,count(c.id) countid from b,c where b.id = c.kj_id(+) group by b.xx_id ) d wher...

十张表加起来的数据量 大概是多少? 若数据量 不是很大的话,可以按照 古舟蓑笠翁 的做法来 你SQL 中的from_unixtime 函数,这样 跑法,速率应该不是 很高吧!? 建议 分步骤去做,先把时间戳 换成 datetime 后,再一步一步汇总统计,统计规则,你...

ALTER PROCEDURE TESTPERCUDUREASDECLARE @col INTEGERDECLARE @db_num INTEGERDECLARE @SQL AS VARCHAR(200)BEGIN SELECT TOP 0 QQNUM INTO dbo.qqnum FROM groupdata.dbo.group001 --创建一个表用来装你的数据 SET @col=1 SET @db_num=1WHILE ...

没看明白,既要查询有blog.id=1的数据,结果又要不包含blog.id=1? 你把上面的例子要输出的结果贴一下 select a.* from blog a,blogAndKeyword b,(select keywordId From blogAndKeyword b where a.id=1)cwhere a.id=b.blogId and b.keywordId=c...

网站首页 | 网站地图
All rights reserved Powered by www.tnjk.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com