Inner join 内连接 :
语法:
SELECT * FROM 表名1
inner join 表名2 on 表名1.字段 = 表名2.字段
通俗的话来说,就是把两个表(两个表为列) 通过字段中相同的值 然后连接起来形成新的一个表。
创建表数据脚本:
建表1:
CREATE TABLE student(
Sno char(15) NOT NULL,
Sname char(20) NULL,
Ssex char(2) NULL,
Sage smallint NULL,
Sdept char(20) NULL
)
INSERT student (Sno, Sname, Ssex, Sage, Sdept) VALUES ('2012000', '李一平', '男', '18', 'IS')
INSERT student (Sno, Sname, Ssex, Sage, Sdept) VALUES ('2012111', '张立', '男', '19', 'IS')
INSERT student (Sno, Sname, Ssex, Sage, Sdept) VALUES ('2012222', '刘晨', '女', '19', 'CS')
INSERT student (Sno, Sname, Ssex, Sage, Sdept) VALUES ('2012333', '王敏', '女', '18', 'MA')
INSERT student (Sno, Sname, Ssex, Sage, Sdept) VALUES ('2012444', '李勇', '男', '20', 'CS')
INSERT student (Sno, Sname, Ssex, Sage, Sdept) VALUES ('201255555', '张琴', '女', '19', 'CS')
INSERT student (Sno, Sname, Ssex, Sage, Sdept) VALUES ('201266666', '王方', '女', '20', 'MA')
INSERT student (Sno, Sname, Ssex, Sage, Sdept) VALUES ('201277777', '黄林林', '男', '21', 'IS')
建表2:
CREATE TABLE Course (
Cno char(4) NOT NULL,
Cname char(40) NULL,
Cpno char(4) NULL,
Ccredit smallint NULL,
Sno nchar(10) NULL
)
INSERT Course (Cno, Cname, Cpno, Ccredit, Sno) VALUES ('1','数据库','5','4','2012000')
INSERT Course (Cno, Cname, Cpno, Ccredit, Sno) VALUES ('2','数学', NULL, '2', '2012111 ')
INSERT Course (Cno, Cname, Cpno, Ccredit, Sno) VALUES ('3','信息系统','1', '4', '2012222 ')
INSERT Course (Cno, Cname, Cpno, Ccredit, Sno) VALUES ('4','操作系统', '6', '3', '2012333 ')
INSERT Course (Cno, Cname, Cpno, Ccredit, Sno) VALUES ('5','数据结构', '7', '4', '2012444 ')
INSERT Course (Cno, Cname, Cpno, Ccredit, Sno) VALUES ('6','数据处理', NULL, '2', '201277777 ')
INSERT Course (Cno, Cname, Cpno, Ccredit, Sno) VALUES ('7','C语言 ', '6', '4', '201288888 ')
INSERT Course (Cno, Cname, Cpno, Ccredit, Sno) VALUES ('8','语文', '8', '8', '201299999 ')
列子:
测试脚本
SELECT * FROM student
inner join Course on student.Sno=Course.Sno
内连接之后的效果图:
******************************************************************************************************************************
一对多的情况:
添加脚本: INSERT Course (Cno, Cname, Cpno, Ccredit, Sno) VALUES ('5','数据结构', '7', '4', '2012222 ')
********************************************************************************************************************************************************
有不对的地方请指正,欢迎关注,日后本人会把开发中遇到的一些问题,和常用的函数更新,欢迎评论一起进步