这篇练习题是我在学sql入门的时候做的,应该算是在网上能找到的习题里最基础的一篇,非常适合新手练习,如果你接触sql不超过半个月,建议可以看一下《sql必知必会》或《mysql必知必会》,同时把下面的习题做完,在做习题的过程中你会真实的感受到”SELECT”,”INSERT”,”WHERE”,”AS”等关键字都是做什么的,之后会对sql语言有一个大致的了解。完成这篇练习题,你应该掌握了sql语言的基本逻辑,恭喜你已经入门了。
在本篇文章中讲两方面内容:
1.介绍如何通过Navicat平台来写sql语句
2.sql入门练习及答案
一.如何使用Navicat
1.双击打开在上一章安装的Navicat for MySQL,图标如下图
2.打开后,可以看到左边的new_connection是我们在填写连接时的连接名,双击后下面出现的是系统自带的库,我们右键单击new_connection,选择新建数据库
3.数据库名可以任意取名,取有意义的名字最好,填写如下。
4.在自己的数据库下,单击任务栏”查询”,选择”新建查询”,然后在新建查询的窗口中可以写sql代码
5.例如我把下述代码复制到新建查询的窗口中,单击任务栏运行;或者选中部分代码右键“运行已选择的”
二.MySQL入门练习题,配有答案
以下内容创作于约半年前,如果答案有问题请直接评论或私心,万分感谢。
网上的很多答案都是错的,就连建表和插入错误语句也太多了,既然是查询练习题,所以我会保证建表插入等语句没错误的,拿来直接用是最起码的标准吧,查询语句会尽力做到优化,毕竟能力有限只能说是尽力吧,谢谢。
设有一数据库,包括四个表:学生表(Student)、课程表(Course)、成绩表(Score)以及教师信息表(Teacher)。用SQL语句创建四个表并完成相关题目。
#建学生信息表
create table student(
sno varchar(20) not null primary key,
sname varchar(20) not null,
ssex varchar(20) not null,
sbirthday datetime,
class varchar(20)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
#建立教师表
create table teacher
(
tno varchar(20) not null primary key,
tname varchar(20) not null,
tsex varchar(20) not null,
tbirthday datetime,
prof varchar(20),
depart varchar(20) not null
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
#建立课程表
create table course
(
cno varchar(20) not null primary key,
cname varchar(20) not null,
tno varchar(20) not null,
foreign key(tno) references teacher(tno)
)ENGINE=Inn