MySQL 学习笔记(2)— 通配符/正则表达/运算符
生活随笔
收集整理的這篇文章主要介紹了
MySQL 学习笔记(2)— 通配符/正则表达/运算符
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本文繼續對 MySQL 中的通配符過濾、正則表達式、運算符進行分類總結。
1. 通配符
LIKE 指示 MySQL,后跟的搜索模式利用通配符匹配而不是直接相等匹配進行比較,其中分為 % 和 _ 通配符。
% 表示任何字符出現 0 次或者任意次數
如:
SELECT prod_id, prod_name FROM products
WHERE prod_id LIKE 'jet%'
_ 只匹配單個個任意字符
SELECT prod_id, prod_name FROM products WHERE prod_name LIKE '_ ton anvil'
以下是一些模式和匹配的字符串:
LIKE 'en%':匹配以“en”開始的字符串,例如“english languages”、“end”;LIKE '%en%':匹配包含“en”的字符串,例如“length”、“when are you”;LIKE '%en':匹配以“en”結束的字符串,例如“ten”、“when”;LIKE 'Be_':匹配以“Be”開始,再加上一個任意字符的字符串。例如“Bed”、“Bet”;LIKE '_e%':匹配一個任意字符加上“e”開始的字符串,例如“her”、“year”。
2. 轉義字符
轉義字符可以將通配符 % 和 _ 進行轉義,將它們當作普通字符使用。默認的轉義字符為反斜杠(\)。
下面例子查詢 25% 的數據
-- 查詢包含字符串 25% 的數據
SELECT c1FROM t_likeWHERE c1 LIKE '%25\%%';
-- WHERE c1 LIKE '%25#%%' ESCAPE '#'; -- 指定 # 作為轉義字符c1 |
----------|
進度:25% 已完成|
第一個 % 匹配多個任意字符;第二個 % 前面增加了轉義字符(\),表示匹配一個百分號;第三個 % 匹配多個任意字符。
查詢結果中只有一條滿足結果的數據,如果去掉轉義字符(\)將會返回兩條記錄。另外,也可以通過 ESCAPE 指定其他的轉義字符。
3. 正則表達
- 正則表達模式主要有以下幾種:
- 匹配字符類見下圖
4. 運算符
主要有算術運算符、比較運算符、邏輯運算符、位運算符
- BETWEEN
SELECT emp_name, salaryFROM employeeWHERE salary BETWEEN 10000 AND 15000;
需要注意的是,BETWEEN 包含了兩端的值(10000 和 15000)
- IN
IN運算符可以用于查找列表中的值。只要匹配列表中的任何一個值,都會返回結果。
NOT 運算符可以結合其他的運算符一起使用,用于對查詢條件的結果取反:
NOT BETWEEN,位于范圍之外。NOT IN,不在列表之中。NOT LIKE,不匹配某個模式。LIKE運算符用于字符串的模糊查找。NOT EXISTS,子查詢中不存在結果。NOT IS NULL,不為空。等價于IS NOT NULL。
以下是 SQL 中各種條件運算符按照優先級從高到低進行的排列;必要時可以使用圓括號進行調整。
=、!=、<>、<、<=、>、>=IS [NOT] NULL、[NOT] LIKE、[NOT] BETWEEN、[NOT] IN、[NOT] EXISTSNOTANDOR
總結
以上是生活随笔為你收集整理的MySQL 学习笔记(2)— 通配符/正则表达/运算符的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 气质女人个性签名大全
- 下一篇: MySQL 学习笔记(3)— 字符串函数