SQL SERVER连接合并查询怎么做,代码是什么
Admin 2022-08-06 群英技术资讯 612 次浏览
CREATE table MyStudentInfo ( Id int not null primary key, Name varchar(16), Age int, Gender varchar(2), Phone varchar(16), Address varchar(50), GradeId int )
INSERT INTO MyStudentInfo SELECT 1,'张三',20,'1','15801258912','上海',1 UNION SELECT 2,'李四',22,'1','12345678901','北京',1 UNION SELECT 3,'王五',16,'1','13976891234','天津',2 UNION SELECT 4,'赵六',19,'1','18676891234','重庆',3 UNION SELECT 5,'小红',21,'2','17776891234','广州',4 UNION SELECT 6,'小王',25,'2','13176891234','深圳',5 UNION SELECT 7,'小刘',18,'2','13374591234','南京',6 UNION SELECT 8,'小张',16,'1','13974596734','长沙',6 UNION SELECT 9,'小罗',27,'1','13175122786','武汉',7 UNION SELECT 10,'小袁',21,'2','17715872346','石家庄',8
CREATE table GradeInfo ( Id int not null primary key, GradeName varchar(16) )
联合插入多条数据
INSERT INTO GradeInfo SELECT 1,'.NET' UNION SELECT 2,'Android' UNION SELECT 3,'PHP' UNION SELECT 4,'UI' UNION SELECT 5,'HTML5' UNION SELECT 6,'JAVA' UNION SELECT 9,'HADOOP' UNION SELECT 10,'大数据'
内链接是从结果表中删除其他被链接表中没有匹配的所有行,所以我们说内链接可能丢失数据
SELECT s.Id,s.Name,s.Age,s.Gender,s.Phone,s.GradeId,g.GradeName FROM MyStudentInfo s INNER JOIN GradeInfo g ON s.GradeId=g.Id
左外联接,关键字LEFT JOIN
左外联接,结果集中包括左表中的所有行,如果左表的某一行在右表中没有匹配行,则在关联的结果集行中,
来自右表的所有选择列表均为NULL
SELECT s.Id,s.Name,s.Age,s.Gender,s.Phone,s.GradeId,g.GradeName FROM MyStudentInfo s LEFT JOIN GradeInfo g ON s.GradeId=g.Id
GIGHT JOIN进行联接
是左外联接的反向联接,将返回右表的所有行,如果右表的某一行在左表中没有匹配行,则将为左表返回NULL
SELECT s.Id,s.Name,s.Age,s.Gender,s.Phone,s.GradeId,g.GradeName FROM MyStudentInfo s RIGHT JOIN GradeInfo g ON s.GradeId=g.Id
关键字是FULL JOIN
完整外联接使用了FULL JOIN进行联接,当某一行在另一表中没有匹配行,另一表的选择列表将返回NULL
SELECT s.Id,s.Name,s.Age,s.Gender,s.Phone,s.GradeId,g.GradeName FROM MyStudentInfo s FULL JOIN GradeInfo g ON s.GradeId=g.Id
CORSS JOIN 没有where 也没有on,返回行数是两表行数的乘积
SELECT s.Id,s.Name,s.Age,s.Gender,s.Phone,s.GradeId,g.GradeName FROM MyStudentInfo s CROSS JOIN GradeInfo g
UNION必须遵循
SELECT Age,Name FROM MyStudentInfo UNION SELECT Id,GradeName FROM GradeInfo ORDER BY Age DESC
SELECT Age,Name,Address FROM MyStudentInfo UNION ALL SELECT Id,GradeName,NULL FROM GradeInfo ORDER BY Age DESC
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
安装PLSQl程序的方法:首先下载“plsql developer”包,解压并进入程序目录;然后选中“plsql developer”的安装程序,并用鼠标进行右键;接着在安装界面中,选择“同意安装协议”;最后选择安装路径即可。
这篇文章主要为大家详细介绍了如何通过日志恢复MSSQL数据的具体步骤,感兴趣的小伙伴们可以参考一下
本文主要介绍SQL中遇到多条相同内容只取一条的最简单实现方法,比较实用,希望能给大家做一个参考。
这篇文章主要介绍了SQL判断是否"存在",还在用 count 操作?很耗时的!本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
这篇文章主要介绍SQL语句执行顺序的内容,对新手学习SQL server有一定的帮助,感兴趣的朋友可以参考下,希望大家阅读完这篇文章能有所收获,接下来小编带着大家一起了解看看。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008