在SQL中如何进行多表查询

有几种方法!如何进行查询,不容易出错?... 有几种方法!如何进行查询,不容易出错? 展开
 我来答
jzchinafj
2008-05-05 · TA获得超过669个赞
知道小有建树答主
回答量:650
采纳率:100%
帮助的人:452万
展开全部
要想多表查询,是有条件的。一般是几张表结构相似或者是有一样的ID号关联。例如:
select * from 表1,表2,表3 这是把3张表结果全部查出来
select * from 表1 where not exists(select 0 from 表2 where
表1.id=表2.id)
easearking007
2008-05-05 · TA获得超过207个赞
知道答主
回答量:130
采纳率:0%
帮助的人:66.4万
展开全部
可以考虑left join ... on(左连接),
cross join ...on(外连接),
inner join ...on(内连接),
right join ...on(右连接).
等等的连接,要是想知道具体的语法可以参考SQL2000帮助!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wangli_jsj
2008-05-05 · TA获得超过130个赞
知道小有建树答主
回答量:315
采纳率:0%
帮助的人:253万
展开全部
下面通过一个简单的学生成绩管理数据库为例说明。
1 建立数据库
1)建立学生表(关键字为学生编号+课程编号);
2)建立课程表(关键字为课程编号);
3)建立考试表(关键字为学生编号+课程编号);
2 简单查询
1)查询学生选课:Select 学生姓名,课程名称 From 学生表,课程表 Where 学生表.课程编号 = 课程表.课程编号
2)查询学生成绩:Select 学生姓名,课程名称,考试成绩 Where 学生表.学生编号 = 考试表.学生编号 And 课程表.课程编号 = 考试表.课程编号
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
o0o000o00
推荐于2016-02-11 · TA获得超过373个赞
知道小有建树答主
回答量:166
采纳率:0%
帮助的人:187万
展开全部
交叉关联:
SELECT * FROM table1 CROSS JOIN table2 CROSS JOIN table3 WHERE ...;
SELECT * FROM table1, table2, table3 WHERE...;
SELECT * FROM table1 JOIN table2 JOIN table3 WHERE ...;
左右关联:
SELECT * FROM table1 LEFT JOIN table2 ON table1.feild = table2.feild WHERE ...;
SELECT * FROM table1 RIGHT JOIN table2 ON table1.feild = table2.feild WHERE ...;
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式