SQL Server数据库应用中,我们经常会用到多对多查询,本文我们就给出了一个简单的多对多查询的实例,接下来就让我们一起来了解一下这部分内容。
创新互联是一家集网站建设,新华企业网站建设,新华品牌网站建设,网站定制,新华网站建设报价,网络营销,网络优化,新华网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
题目是这样的:
- ---学生表
- CREATE TABLE student (
- ID INTEGER,
- stu_No INTEGER,
- NAME VARCHAR2(32)
- );
- --课程表
- CREATE TABLE course (
- ID INTEGER,
- cou_no INTEGER,
- NAME VARCHAR2(32)
- );
- --中间表
- CREATE TABLE s_c (
- stu_id INTEGER,
- cour_id INTEGER
- );
问题:找出名字为张三的学号,姓名 对应学的课程的编号和课程名称,一个sql完成。请问这个查询语句,应该怎么写?
解决方法:
- --多表查询
- SELECT STU.STU_NO, STU.NAME --, COU.COU_NO, COU.NAME
- FROM S_C SC
- LEFT JOIN STUDENT STU
- ON STU.ID = SC.STU_ID
- LEFT JOIN COURSE COU
- ON COU.ID = SC.COUR_ID
- WHERE STU.NAME = '梁帅伟';
- --就算他没有参加任何课程,也将他的姓名,学号查询出来 (left join 以 此关键字前的表为准)
- SELECT S.STU_NO 学号, S.NAME 姓名, C.COU_NO 课程编号, C.NAME 课程名称
- FROM STUDENT S
- LEFT JOIN S_C SC
- ON S.ID = SC.STU_ID
- LEFT JOIN COURSE C
- ON C.ID = SC.COUR_ID
- WHERE S.NAME = '梁文兴';
关于SQL Server数据库多对多查询的实例就介绍到这里的,希望本次的介绍能够对您有所收获!
本文名称:一个SQLServer多对多查询的面试题
网站URL:http://www.shufengxianlan.com/qtweb/news3/226953.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联