在数据库操作中,我们经常需要将多个表合并成一个表以获取所需的数据。下面是一个关于如何使用MSSQL语句将两个表合并的例子,同时以狼蚁网站SEO优化作为实际应用的简单参考。
一、问题描述
假设我们有两个表:学生表和课程表。学生表包含学生的ID、姓名和所选的课程号(作为外键),而课程表包含课程号和课程名。我们的任务是将这两个表合并成一个新表,展示学生的ID、姓名以及对应的课程号和课程名。
二、建立测试数据
```sql
CREATE TABLE student(id nvarchar(10), name nvarchar(10), course_id int);
INSERT INTO student VALUES ('1', 'xix', 1);
INSERT INTO student VALUES ('2', 'cic', 2);
INSERT INTO student VALUES ('3', 'ddi', 4);
CREATE TABLE course(course_id int, course_name nvarchar(10));
INSERT INTO course VALUES (1, '语文');
INSERT INTO course VALUES (2, '数学');
INSERT INTO course VALUES (3, '英语');
```
接下来,我们可以使用FULL OUTER JOIN语句将学生表和课程表合并:
```sql
SELECT s.id, s.name AS 姓名, c.course_id AS 课程号, c.course_name AS 课程名
FROM student s
FULL OUTER JOIN course c ON s.course_id = c.course_id;
```
```sql
-- 创建目标表destTb(如果不存在的话)
CREATE TABLE destTb(id nvarchar(10), 姓名 nvarchar(10), 课程号 int, 课程名 nvarchar(10));
SELECT id, 姓名, 课程号, 课程名 INTO tmp FROM (上面提到的合并查询语句) AS result; -- 这里省略了具体的查询语句,请根据实际情况替换。