首页新闻找找看学习计划

求一个多表查询的例子!

0
悬赏园豆:10 [待解决问题]

越简单越好麻烦写的详细点!谢谢大神 求速度啊!!!!!

水嫩小白菜的主页 水嫩小白菜 | 初学一级 | 园豆:3
提问于:2012-09-26 11:47
< >
分享
所有回答(8)
0

FROM    #pb
        INNER JOIN #pc ON #pb.ID = #pc.ID
        INNER JOIN #pp ON #pc.ID = #pp.ID

田林九村 | 园豆:2367 (老鸟四级) | 2012-09-26 11:56

#pc是什么意思!

支持(0) 反对(0) 水嫩小白菜 | 园豆:3 (初学一级) | 2012-09-26 12:06

@水嫩小白菜: 一个表名,你可以替换为你实际要查询的表

支持(0) 反对(0) 田林九村 | 园豆:2367 (老鸟四级) | 2012-09-26 12:26
0

多表查询跟麻烦简单没什么关系,再多的表不过是结果集之间的逻辑关系你得弄清楚

常用: inner join 、 left join、 union all

歪头儿在帝都 | 园豆:76 (初学一级) | 2012-09-26 12:47
0

比如两个表  tableA 和tableB   主键都是ID

现在通过他们的主键显示两个表的数据

select * from tableA inner join tableB on tableA.ID=tableB.ID

这样就会显示出两个表中ID相同的数据

狼之崛起 | 园豆:211 (菜鸟二级) | 2012-09-26 13:34
0

笛卡尔积

select * from a,b

inner join  

left join

right join

chenping2008 | 园豆:9836 (大侠五级) | 2012-09-26 14:03

我知道 问题是从三个表分别提取不同的信息 而且他们的主键 不都是ID

支持(0) 反对(0) 水嫩小白菜 | 园豆:3 (初学一级) | 2012-09-26 15:39
0

select a.*,b.* from Table1 a,Table2 b

喻家军 | 园豆:288 (菜鸟二级) | 2012-09-26 16:37
0

select * from tableA inner join tableB on tableA.ID=tableB.ID

jason2013 | 园豆:1998 (小虾三级) | 2012-09-26 16:44
0

WITH    x AS ( SELECT   Account ,
                        ROW_NUMBER() OVER ( ORDER BY Account ) rowN
               FROM     dbo.frmuser
               UNION ALL
               SELECT   DepartName ,
                        ROW_NUMBER() OVER ( ORDER BY DepartName )
               FROM     dbo.mdDepartment
             ), y AS(
SELECT rowN FROM x  GROUP BY x.rowN
)
SELECT * FROM y LEFT JOIN x ON y.rowN = x.rowN

dearz | 园豆:588 (小虾三级) | 2012-10-05 17:31
0

select * from Table1 t1

join Table2 t2 on t1.id=t2.id

 针对上面内容的解释如下:

Table1,Table2分别是两个表名

t1,t2分别是两个表的另一个名称,方便后面使用而以。

join 是连续起来 on 后面紧跟着 t1.id=t2.id 就是这两个相等的条件。

YuZheLion | 园豆:170 (初学一级) | 2012-10-07 23:22
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册