我想如果练习过第三篇入门习题的话,应该对sql的理解应该有很大提升了。那么这一篇做完之后,希望可以提升的是在处理计算机问题时的思维能力。逻辑能力对IT行业是很重要的,新入行的朋友常常会怀疑自己是不是智力出现了问题,很多逻辑想不明白,其实不是的,是一种习惯性的思考方式而已。
入门级的练习题做完之后估计对于sql的基本语法有所了解了应该,初级的题开始需要动脑子了,下面的练习题比入门级难一点,把他们都研究明白应付sql笔试题应该勉强够了的,我先做一做,之后再补充心得。
以下代码完成于刚刚学习sql的时候,如果有问题希望可以批评指出帮忙改正,谢谢各位
create table Student1(
Sno varchar(10) NOT NULL PRIMARY KEY,
Sname varchar(10),
Sage datetime,
Ssex char(2)
)ENGINE = INNODB DEFAULT CHARSET = utf8;
CREATE TABLE teacher1(
tno VARCHAR(8) NOT NULL PRIMARY KEY,
tname VARCHAR(10)
)ENGINE = INNODB DEFAULT CHARSET = utf8;
CREATE TABLE course1(
cno VARCHAR(8) NOT NULL PRIMARY KEY,
cname VARCHAR(20),
tno VARCHAR(8),
FOREIGN KEY(tno) REFERENCES teacher1(tno)
)ENGINE = INNODB DEFAULT CHARSET = utf8;
create table Score1
(Sno varchar(10),
Cno varchar(8),
score decimal(18,1),
FOREIGN KEY(sno) REFERENCES student1(sno),
FOREIGN KEY(cno) REFERENCES course1(cno)
)ENGINE = INNODB DEFAULT CHARSET = utf8;
insert into Student1 values('01' , '丁一' , '1990-01-01' , '男');
insert into Student1 values('02' , '包二' , '1990-12-21' , '男');
insert into Student1 values('03' , '张三' , '1990-05-20' , '男');
insert into Student1 values('04' , '李四' , '1990-08-06' , '男');
insert into Student1 values('05' , '王五' , '1991-12-01' , '女');
insert into Student1 values('06' , '赵六' , '1992-03-01' , '女');
insert into Student1 values('07' , '田七' , '1989-07-01' , '女');
insert into Student1 values('08' , '汪八' , '1990-01-20' , '女');
insert into Teacher1 v