distinct

不能部分使用distinct。distinct关键字应用于所有列而不仅是前置它的列。如果有多列,除非多列都不同,否则所有行都被检索出来。


limit

limit 5,4第一个数字为开始位置,第二个数字为检索数据行数。

由于上面的实现很容易混乱,推荐使用limit 4 offset 5来实现同样的功能


order by

order by默认排序是asc,如果想在多个列降序排列,必须对每个列指定desc关键字

order by子句的位置,在给出order by字句后,应保证它位于from字句之后。如果使用limit,它必须位于order by之后。使用字句的次序不对将产生错误信息。


where

where可以检查单个值,不匹配检查(<>!=),范围检查(between and),空值检查(is nullis not null

mysql允许给出多个where字句,这些字句可以两种方式使用:以and字句的方式或or字句的方式使用。对于多个复杂的字句,使用圆括号明确地分组相应的操作符。

圆括号在where字句中海油另外一种用法。in操作符用来指定条件范围,范围中的每个条件都可以进行匹配。

mysql支持使用not对in、between和exists字句取反,这与多数其他DBMS允许使用NOT对各种条件取反有很大差异。


like

通配符:
%代表任何字符出现任意次数
_代表只匹配单个字符而不是多个字符
注意以上都是不能匹配NULL值的


参考书籍:

  • MySQL必知必会


MySql

登陆发表评论