下面先上一张表图
select 检索查询
- 检索单个列
SELECT name FROM `user`
- 检索多个列(一定要在列名之间加上逗号,最后一个列名不用加)
SELECT name,age FROM `user`
- 检索所有列(使用了通配符*,虽然省事但是检索了不需要的列,通常会降低检索和应用程序的性能)
SELECT * FROM `user`
- 检索不同的行(DISTINCT关键字位于列之前)
SELECT DISTINCT age FROM `user`
limit 限制查询结果
使用limit关键字可以限制查询结果
- 指定检索的开始行和行数,如果没有指定开始行则默认为0行,如果没有足够的行则返回它能返回的那么多
SELECT * FROM `user` LIMIT 2
SELECT * FROM `user` LIMIT 2,1
ORDER BY 排序(它的位置位于FROM之后,LIMIT之前)
SQL语句检索的结果一般没有顺序,如果想对其进行排序则需要用到ORDER BY关键字
- 按单个列排序
SELECT * FROM `user` ORDER BY age
- 按多个列排序(检索user表,将结果按两个列进行排序,先按照age排序,在对具有相同age值的行按照name排序,如果所有age值都一样,则不会按照name排序)
SELECT * FROM `user` ORDER BY age,name
- 指定排序方向(数据排序默认为升序(从A到Z),还可以使用降序,但必须指定关键字DESC)
SELECT * FROM `user` ORDER BY age DESC
- 指定排序方向,并按多个列排序(先按age降序,然后在对age相同的行按name排序)
SELECT * FROM `user` ORDER BY age DESC,name
- 找出一列中最高或最低的值
SELECT * FROM `user` ORDER BY age LIMIT 1
SELECT * FROM `user` ORDER BY age DESC LIMIT 1