手机
当前位置:查字典教程网 >编程开发 >mssql数据库 >mssql 两表合并sql语句
mssql 两表合并sql语句
摘要:一、问题学生表:课程表:id姓名课程号(外键)课程号,课程名'1','xix',11,'语文''2','cic',22,'数学''3','d...

一、问题

学生表: 课程表:

id 姓名 课程号(外键) 课程号,课程名

'1', 'xix', 1 1,' 语文'

'2', 'cic', 2 2, '数学'

'3', 'ddi', 4 3,'英语'

将学生表、课程表合成一个新表 destTb:

id 姓名 课程号 课程名

1 xix 1 语文

2 cic 2数学

3 ddi NULLNULL

NULLNULL3英语

二、建立测试数据

CREATE TABLE student(id nvarchar(10),name nvarchar(10),cno int)

INSERT student SELECT '1','xix',1

UNION ALL SELECT '2','cic',2

UNION ALL SELECT '3','ddi',4

GO

CREATE TABLE class(cno int,name nvarchar(10))

INSERT class SELECT 1,'语文'

UNION ALL SELECT 2,'数学'

UNION ALL SELECT 3,'英语'

GO

select id ,s.name as 姓名,c.cno as cno,c.name as 课程 FROM student as s FULL OUTER JOIN class as c ON s.cno=c.cno

三、合并插入

--目标表destTb不存在 ,结果集作为tmp

select * into destTb from (select id ,s.name as 姓名,c.cno as cno,c.name as 课程 FROM student as s FULL OUTER JOIN class as c ON s.cno=c.cno) as tmp

--如果目标表destTb已经存在

insert into destTb select id ,s.name as 姓名,c.cno as cno,c.name as 课程 FROM student as s FULL OUTER JOIN class as c ON s.cno=c.cno

【mssql 两表合并sql语句】相关文章:

SqlServer查询表中各列名称、表中列数

sql2012还原sql2008备份文件语句

SQL2005 高效分页sql语句

sqlserver 比较两个表的列

sql相同的id合并

mssql如何转换到MySQL

mssql 两种数据插入方式

sql server 临时表 查找并删除的实现代码

sql 普通行列转换

给sqlserver中的表创建索引

精品推荐
分类导航