欢迎来到天天文库
浏览记录
ID:59688112
大小:144.38 KB
页数:3页
时间:2020-11-13
《sql语句的多表连接查询.pdf》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、多表连接查询SQL多表连接查询分为:内连接,外连接,交叉连接内连接的使用根据表中共同的列进行匹配,特别是存在主外键关系。一般用的比较多外连接分为左外连接,右外连接,完整连接交叉连接返回的记录是两张表相乘的记录数内连接主要一主表的信息为主如果没有数据就不显示例如我们来看实例:先建两张表:createtablestudent(idintprimarykeyidentity(1,1),namevarchar(50))createtablegrade(idintprimarykeyidentity(1,1),scorem
2、oney)altertablegradeaddsidintselect*fromgradealtertablegradeaddconstraintfk_sidforeignkey(sid)referencesstudent(id)insertintostudentvalues('哈哈')insertintostudentvalues('喜喜')insertintostudentvalues('呵呵')insertintostudentvalues('郁闷')insertintostudentvalues('小强'
3、)insertintostudentvalues('小马')insertintogradevalues(90,1)insertintogradevalues(80,2)insertintogradevalues(70,null)select*fromstudentselect*fromgrade内连接查询方式有两种:1.selects.*,g.*fromstudents,gradegwheres.id=g.sid;2.selects.*,g.*fromstudentsinnerjoingradegons.id=g
4、.sid;1/3我们看到我们主表没有主表没有匹配信息的时候其他的记录没有显示下面我们来看外连接:主要以从表信息为主从表没有主表记录则显示为nullselects.*,g.*fromstudentsleftjoingradegons.id=g.sidselects.*,g.*fromstudentsrightjoingradegons.id=g.sid还可以是selects.*,g.*fromstudentsleftouterjoingradegons.id=g.sidselects.*,g.*fromstuden
5、tsrightouterjoingradegons.id=g.sid看他是左还是右下面来看看完整连接:将两表的左和右基础数据全部查询出来当一个表没有另一个表的记录的时候则为nul反之右表也是一样2/3selects.*,g.*fromstudentsfulljoingradegons.id=g.sidselects.*,g.*fromstudentsfullouterjoingradegons.id=g.sid交叉连接查询:先返回左表所有行,左表行在与右表行一一组合,等于两个表相乘selects.*,g.*fro
6、mstudentscrossjoingradeg3/3
此文档下载收益归作者所有