预存资料
student_id | name | major | score |
1 | 小白 | 历史 | 50 |
2 | 小黄 | 生物 | 90 |
3 | 小绿 | 历史 | 70 |
4 | 小蓝 | 英语 | 80 |
5 | 小黑 | 化学 | 20 |
select * from `student`;
注意,*是所有资料
如果把*改为`name`那么只回传`name`
select `name` from `student`;
如果想要根据分数排序,那么可以这样写
select *
from `student`
order by `score`;
默认是由低到高排序 asc
如果要由高到低排序,那么需要加
select *
from `student`
order by `score` desc;
select *
from `student`
order by `score`, `student_id`;
这么写是什么意思呢?
先根据score排序,再根据student_id排序
限制回传的资料笔数
select *
from `student`
order by `score`
limit 3;
这么写,它会回传前3笔资料,也就是分数最低的3笔资料
其他限制
select *
from `student`
where `major` = '英语' and `student_id` = 1;
限制了回传资料的major和student_id
这里的where好有英语语法的感觉哦!
当然,还可以把and改为or
select *
from `student`
where `major` in ('历史','英语','生物');
这个代码,相当于
select *
from `student`
where `major` = `英语`
or `major` = `历史`
or `major` = `生物`;