運算子 in 允許我們在 where 子句中過濾某個欄位的多個值。
#where子句使用in語法
select column_name from table_name where column_name in
(value1, value2,..
.)
在where子句中,有時候我們需要查詢包含*** 字串的所有記錄,這時就需要用到運算子like。
#where子句使用like語法
select column_name from table_name where column_name like 『%
value
%』
說明:
like子句中的%類似於正規表示式中的*,匹配任意0個或多個字元
like子句中的_匹配任意單個字元
like子句中如果沒有%和_,就相當於運算子=的效果
mysql>
select
*from employee where id=
1or id=
2or id=3;
+----+-------+------+--------+
| id | name | *** | salary |
+----+-------+------+--------+|1
| lily0 |1|
5500||
2| lily1 |0|
4500||
3| lily2 |0|
4200|+
----+-------+------+--------+
3rows
inset
(0.00 sec)
mysql>
select
*from employee where id in(1
,2,3
);+----+-------+------+--------+
| id | name | *** | salary |
+----+-------+------+--------+|1
| lily0 |1|
5500||
2| lily1 |0|
4500||
3| lily2 |0|
4200|+
----+-------+------+--------+
3rows
inset
(0.00 sec)
mysql>
select
*from employee where name like
'lily5';+
----+-------+------+--------+
| id | name | *** | salary |
+----+-------+------+--------+|6
| lily5 |1|
6800|+
----+-------+------+--------+
1row
inset
(0.00 sec)
mysql>
select
*from employee where name like
'lily1%';+
----+--------+------+--------+
| id | name | *** | salary |
+----+--------+------+--------+|2
| lily1 |0|
4500||
11| lily10 |0|
10000||
12| lily11 |0|
4000|+
----+--------+------+--------+
3rows
inset
(0.00 sec)
mysql>
select
*from employee where name like
'lily1_';+
----+--------+------+--------+
| id | name | *** | salary |
+----+--------+------+--------+|11
| lily10 |0|
10000||
12| lily11 |0|
4000|+
----+--------+------+--------+
2rows
inset
(0.00 sec)
mysql>
select
*from employee where name like
'%9';+
----+-------+------+--------+
| id | name | *** | salary |
+----+-------+------+--------+|10
| lily9 |1|
8000|+
----+-------+------+--------+
1row
inset
(0.00 sec)
mysql>
select
*from employee where name like
'%ly1%';+
----+--------+------+--------+
| id | name | *** | salary |
+----+--------+------+--------+|2
| lily1 |0|
4500||
11| lily10 |0|
10000||
12| lily11 |0|
4000|+
----+--------+------+--------+
3rows
inset
(0.00 sec)
mysql中like的用法
在sql結構化查詢語言中,like語句有著至關重要的作用。like語句的語法格式是 select from 表名 where 欄位名 like 對應值 子串 它主要是針對字元型字段的,它的作用是在乙個字元型字段列中檢索包含對應子串的。a 包含零個或多個字元的任意字串 1 like mc 將搜尋以字母...
MySQL模糊查詢 LIKE模式和REGEXP模式
mysql模糊查詢提供了兩種模式 like模式和regexp模式。like模式是使用的like 或 not like 比較運算子進行模糊查詢。select 字段 from 表 where 字段 like not like 條件 針對條件,有以下幾種萬用字元 萬用字元含義 表示任意乙個或多個字元,可匹...
mysql的like是否使用索引
mysql在使用like查詢中,能不能用到索引?在什麼地方使用索引呢?在使用like的時候,如果使用 會不會用到索引呢?explain select from user where username like ptd 上面的結果是全表掃瞄,並沒有使用到索引。只是使用乙個 的查詢結果 explain ...