sql三表关联查询语句
三表关联查询,又称联合查询,是指在关系数据库中,根据不同表之间的关系把三张以上的不同表进行联接,从而查询某一特定对象的信息,组合成一条视图,并且可以实现多表查询,联合查询就是把多张表,也就是表之间通过外键进行关联,根据这种关联建立起它们之间的联系,以达到某种业务的目的,从而查询出数据库中一组需要的数据信息。
一、三表关联查询的概念:
1、定义:三表关联查询,又称联合查询,是指在关系数据库中,根据不同表之间的关系把三张以上的不同表进行联接,从而查询某一特定对象的信息,组合成一条视图。
2、优点:可以实现多表查询,联合查询就是把多张表,也就是表之间通过外键进行关联,根据这种关联建立起它们之间的联系,以达到某种业务的目的,从而查询出数据库中一组需要的数据信息。
二、三表关联查询的语句:
1、SQL语句:SELECT table1.field1, table2.field2, table3.field3 FROM table1, table2, table3 WHERE table1.field1= table2.field1 AND table2.field2=table3.field2;
2、参数解析:SELECT:表示要选取的字段,后面可以跟上表.field,表示是从哪个表选取,前面是表名,后面是字段名;FROM:表示要选取字段的表,后面可以跟上表名,表示从哪几个表中获取数据;WHERE:表示要制定查询条件,后面可以跟上条件,表示查询时限制哪几个表的某一字段。
三、示例:
1、假设有三个表名为tb_Student,tb_Score和tb_Course,tb_Student表中有stu_name和stu_id,tb_Score表中有stu_id和score,tb_Course中有course_name字段,要查询某个学生的某个课程的成绩,可以使用以下SQL语句:
SELECT tb_Student.stu_name, urse_name,tb_Score.score FROM tb_Student,tb_Score,tb_Course WHERE tb_Student.stu_id=tb_Score.stu_id AND urse_name=urse_name;
2、假设有三个表名为tb_Book,tb_Order和tb_User,tb_Book表中有book_name,tb_Order表中有user_id和order_time,tb_User中有user_name字段,要查询特定用户购买的特定书籍的时间,可以使用以下SQL语句:
sql语句怎么查询两张表的数据SELECT tb_User.user_name,tb_Book.book_name, der_time FROM tb_Book,tb_Order,tb_User WHERE tb_Book.book_name=tb_Order.book_name AND tb_Order.user_id= tb_User.user_id;
总结:三表关联查询,又称联合查询,是指在关系数据库中,根据不同表之间的关系把三张以上的不同表进行联接,从而查询某一特定对象的信息,组合成一条视图,从而查询出数据库中一组需要的数据信息。SQL语句中使用SELECT语句选取需要的字段,FROM语句表示需要查询的表,WHERE语句表示筛选查询条件,按照表之间的关联关系通过某个字段把表都连接起来查询出想要的数据结果。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论