SQL篇--查询练习I(创建与插入)

在面试和实际操作中,sql的查询是最重要的。本文开始进行sql查询练习,首先需要数据准备,创建数据表并插入数据。
本文的数据表是根据B站视频课程得来,并且主要参考评论区香草味的橙子整理的mysql笔记,文末也会再次放出引用链接。数据表主要包括:

  • 学生表 student
  • 课程表 course
  • 教师表 teacher
  • 成绩表 score

下面进行创建和插入。

1.学生表

创建

create table student(
  s_no varchar(20) primary key comment '学生学号',
  s_name varchar(20) not null comment '学生姓名 不能为空',
  s_sex varchar(10) not null comment '学生性别',
  s_birthday datetime comment '学生生日',
  s_class varchar(30) comment '学生所在班级'
);

插入数据

INSERT INTO student VALUES('101','曾华','男','1977-09-01','95033');
INSERT INTO student VALUES('102','匡明','男','1975-10-02','95031');
INSERT INTO student VALUES('103','王丽','女','1976-01-23','95033');
INSERT INTO student VALUES('104','李军','男','1976-02-20','95033');
INSERT INTO student VALUES('105','王芳','女','1975-02-10','95031');
INSERT INTO student VALUES('106','陆军','男','1974-06-03','95031');
INSERT INTO student VALUES('107','王尼玛','男','1976-02-20','95033');
INSERT INTO student VALUES('108','张全蛋','男','1975-02-10','95031');
INSERT INTO student VALUES('109','赵铁柱','男','1974-06-03','95031');
2.课程表

创建

create table course(
  c_no varchar(20) primary key comment '课程号',
  c_name varchar(30) not null comment '课程名称',
  t_no varchar(20) not null comment '教师号 外键关联teacher',
  foreign key(t_no) references teacher(t_no)
);

插入数据

INSERT INTO course VALUES('3-105','计算机导论','825');
INSERT INTO course VALUES('3-245','操作系统','804');
INSERT INTO course VALUES('6-166','数字电路','856');
INSERT INTO course VALUES('9-888','高等数学','831');
3.教师表

创建

CREATE TABLE teacher(
    t_no VARCHAR(20) PRIMARY KEY COMMENT'教师编号',
    t_name VARCHAR(20) NOT NULL COMMENT'教师姓名',
    t_sex VARCHAR(20) NOT NULL COMMENT'教师性别',
    t_birthday DATETIME COMMENT'教师生日',
    t_rof VARCHAR(20) NOT NULL COMMENT'教师职称',
    t_depart VARCHAR(20) NOT NULL COMMENT'教师所在的部门'
);

插入数据

INSERT INTO teacher VALUES('804','李诚','男','1958-12-02','副教授','计算机系');
INSERT INTO teacher VALUES('856','张旭','男','1969-03-12','讲师','电子工程系');
INSERT INTO teacher VALUES('825','王萍','女','1972-05-05','助教','计算机系');
INSERT INTO teacher VALUES('831','刘冰','女','1977-08-14','助教','电子工程系');

在这里有一个需要注意的点,要在course表之前建立teacher表,因为FOREIGN KEY(t_no) references teacher(t_no),根据teacher设置了外键。

4.成绩表

创建

CREATE TABLE score (
    s_no VARCHAR(20) NOT NULL COMMENT'成绩表的编号 依赖学生学号',
    c_no VARCHAR(20)  NOT NULL COMMENT'课程号 依赖于课程表中的c_id',
    sc_degree decimal,
    foreign key(s_no) references student(s_no),
    foreign key(c_no) references course(c_no),
    PRIMARY KEY(s_no,c_no)
);

插入数据

INSERT INTO score VALUES('103','3-245','86');
INSERT INTO score VALUES('105','3-245','75');
INSERT INTO score VALUES('109','3-245','68');
INSERT INTO score VALUES('103','3-105','92');
INSERT INTO score VALUES('105','3-105','88');
INSERT INTO score VALUES('109','3-105','76');
INSERT INTO score VALUES('103','6-166','85');
INSERT INTO score VALUES('105','6-166','79');
INSERT INTO score VALUES('109','6-166','81');
INSERT INTO score VALUES('101','3-105','90');
INSERT INTO score VALUES('102','3-105','91');
INSERT INTO score VALUES('104','3-105','89');
INSERT INTO score VALUES('101','9-888','92');

可以看一下插入数据之后表的结构。
student表
tacher表

参考

https://www.bilibili.com/video/BV1Vt411z7wy?p=42
B站大佬 香草味橙子 整理的mysql笔记

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值