where语句的三种类别。
比大小类
SELECT *
FROM Students
WHERE id > 5
这里可以用 >, <, >=, <=, !=
等
区间类
SELECT *
FROM Students
WHERE id BETWEEN 5 AND 7
同理,也有id NOT BETWEEN 5 AND 7
的写法。
集合类:
SELECT *
FROM Students
WHERE id IN {4,6,9}
同理,也有id NOT IN {4,6,9}
如果where中的是字符条件的话
=, !=, <, >
等符号依旧适用。同时,LIKE
也可以用于表示等于,但是与 =
符号不同的是,LIKE
是大小写不敏感的等于匹配,而=
是大小写敏感的等于匹配。
集合形式的IN
和NOT IN
除此之外,where中还可以运用%
完成模糊匹配操作。例如,%li
匹配的就是所有以li结尾的字符串,而%li%
是所有包括li的字符串。% 可以用0个或者是多个字符串代替。
_
也是模糊匹配的一种形式。但是_
的话,是一个固定的占位符,能且只能用一个字符串代替,li_
绝对不会匹配成 li ,但是li%
却可以和 li 匹配。
一般来讲,模糊匹配的话,要用 LIKE
而不是 =
。
SELECT *
FROM Students
WHERE NAME LIKE '%Mary%'