关系模型
id class_id name gender score
1 1 小明 M 90
2 1 小红 F 95
对于关系表,有个很重要的约束,就是任意两条记录不能重复。不能重复不是指两条记录不完全相同,而是指能够通过某个字段唯一区分出不同的记录,这个字段被称为主键。
当我们用主键唯一标识记录时,我们就可以在students表中确定任意一个学生的记录:
id name other columns...
1 小明 ...
2 小红 ...
由于一个班级可以有多个学生,在关系模型中,这两个表的关系可以称为“一对多”,即一个classes的记录可以对应多个students表的记录。
id class_id name other columns...
1 1 小明 ...
2 1 小红 ...
5 2 小白 ...
在students表中,通过class_id的字段,可以把数据与另一张表关联起来,这种列称为外键。
索引是关系数据库中对某一列或多个列的值进行预排序的数据结构。通过使用索引,可以让数据库系统不必扫描整个表,而是直接定位到符合条件的记录,这样就大大加快了查询速度。
查询数据
基本查询
使用SELECT * FROM students时,SELECT是关键字,表示将要执行一个查询,*表示“所有列”,FROM表示将要从哪个表查询
该SQL将查询出students表的所有数据。注意:查询结果也是一个二维表,它包含列名和每一行的数据
条件查询
SELECT语句可以通过WHERE条件来设定查询条件,查询结果是满足查询条件的记录。例如,要指定条件“分数在80分或以上的学生”,写成WHERE条件就是
`SELECT * FROM students WHERE score >= 80。