SQL 通配符:用于模糊搜索和匹配的 SQL 關鍵技巧

SQL通配符字符

通配符字符用于替代字符串中的一個或多個字符。通配符字符與LIKE運算符一起使用。LIKE運算符用于在WHERE子句中搜索列中的指定模式。

示例

返回所有以字母 ‘a’ 開頭的客戶:

SELECT * FROM Customers
WHERE CustomerName LIKE 'a%';

通配符字符

符號描述
%表示零個或多個字符
_表示一個單個字符
[]表示括號內的任何單個字符
^表示括號內不在括號內的任何字符
-表示指定范圍內的任何單個字符
{}表示任何轉義字符
  • *不支持在PostgreSQL和MySQL數據庫中。
  • **僅支持在Oracle數據庫中。

演示數據庫

以下是示例中使用的 Customers 表的一部分:

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.05021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.05023Mexico
4Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbk?pChristina BerglundBerguvsv?gen 8Lule?S-958 22Sweden

使用 % 通配符

% 通配符表示任意數量的字符,甚至是零個字符。

示例

返回以模式 ‘es’ 結尾的所有客戶:

SELECT * FROM Customers
WHERE CustomerName LIKE '%es';

示例

返回包含模式 ‘mer’ 的所有客戶:

SELECT * FROM Customers
WHERE CustomerName LIKE '%mer%';

使用 _ 通配符

_ 通配符表示一個單個字符。它可以是任何字符或數字,但每個 _ 代表一個且僅代表一個字符。

示例

返回所有以任何字符開頭,然后是 “ondon” 的城市的客戶:

SELECT * FROM Customers
WHERE City LIKE '_ondon';

示例

返回所有以 “L” 開頭,然后是任何 3 個字符,以 “on” 結尾的城市的客戶:

SELECT * FROM Customers
WHERE City LIKE 'L___on';

使用 [] 通配符

[] 通配符返回一個結果,如果括號內的任何字符都匹配。

示例

返回以 “b”、“s” 或 “p” 中的任何字符開頭的所有客戶:

SELECT * FROM Customers
WHERE CustomerName LIKE '[bsp]%';

使用 - 通配符

  • 通配符允許您在 [] 通配符內指定字符范圍。

示例

返回以 “a”、“b”、“c”、“d”、“e” 或 “f” 開頭的所有客戶:

SELECT * FROM Customers
WHERE CustomerName LIKE '[a-f]%';

組合通配符

任何通配符,如 % 和 _,都可以與其他通配符一起使用。

示例

返回以 “a” 開頭且至少為 3 個字符長的客戶:

SELECT * FROM Customers
WHERE CustomerName LIKE 'a__%';

示例

返回第二個位置有 “r” 的客戶:

SELECT * FROM Customers
WHERE CustomerName LIKE '_r%';

沒有通配符

如果沒有指定通配符,短語必須精確匹配才能返回結果。

示例

返回所有來自西班牙的客戶:

SELECT * FROM Customers
WHERE Country LIKE 'Spain';

Microsoft Access通配符

Microsoft Access數據庫有一些其他的通配符:

符號描述示例
*表示零個或多個字符bl* 可以找到 bl、black、blue 和 blob
?表示一個單個字符h?t 可以找到 hot、hat 和 hit
[]表示括號內的任何單個字符h[oa]t 可以找到 hot 和 hat,但不會找到 hit
!表示括號內不在括號內的任何字符h[!oa]t 可以找到 hit,但不會找到 hot 和 hat
-表示指定范圍內的任何單個字符c[a-b]t 可以找到 cat 和 cbt
#表示一個單個數字符號2#5 可以找到 205、215、225、235、245、255、265、275、285 和 295

最后

為了方便其他設備和平臺的小伙伴觀看往期文章:公眾號搜索Let us Coding,或者掃描下方二維碼,關注公眾號,即可獲取最新文章。

看完如果覺得有幫助,歡迎點贊、收藏關注

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/167373.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/167373.shtml
英文地址,請注明出處:http://en.pswp.cn/news/167373.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

5:kotlin 類(Classes )

kotlin支持面向對象編程,也有雷和對象的概念 要聲明一個類需要使用class關鍵字 class Customer屬性(Properties) 可以在類名后邊添加(),在()里邊聲明屬性 class Contact(val id: Int, var email: String)聲明了不…

單片機、ARM、嵌入式開發、Android 底層開發有什么關系?

單片機、ARM、嵌入式開發、Android 底層開發有什么關系? 從我目前的見識來看: 單片機是個系統(比如:51、AVR、PLC...),其中包含了去除了輸入輸出之外的運算器、控制器、存儲器,我們用程序可以非…

從Redis反序列化UserDetails對象異常后發現FastJson序列化的一些問題

最近在使用SpringSecurityJWT實現認證授權的時候,出現Redis在反序列化userDetails的異常。通過實踐發現,使用不同的序列化方法和不同的fastJson版本,異常信息各不相同。所以特地記錄了下來。 一、項目代碼 先來看看我項目中redis相關配置信息…

黑馬點評筆記 redis緩存三大問題解決

文章目錄 緩存問題緩存穿透問題的解決思路編碼解決商品查詢的緩存穿透問題 緩存雪崩問題及解決思路緩存擊穿問題及解決思路問題分析使用鎖來解決代碼實現 邏輯過期方案代碼實現 緩存問題 我們熟知的是用到緩存就會遇到緩存三大問題: 緩存穿透緩存擊穿緩存雪崩 接…

QOverload獲取重載的信號

QOverload獲取重載的信號 多個信號或者函數同名&#xff0c;但是不同參數&#xff0c;也就是存在重載 可以使用QOverload獲取指定的重載函數 QOverload<int>::of(&QComboBox::currentIndexChanged)上面的代碼就是用來獲取參數為int的那個函數

【Spring篇】JDK動態代理

目錄 什么是代理&#xff1f; 代理模式 動態代理 Java中常用的代理模式 問題來了&#xff0c;如何動態生成代理類&#xff1f; 動態代理底層實現 什么是代理&#xff1f; 顧名思義&#xff0c;代替某個對象去處理一些問題&#xff0c;謂之代理&#xff0c;那么何為動態&a…

短視頻賬號矩陣系統saas化批量管理部署搭建/技術

一、短視頻矩陣系統建模----技術api接口--獲取用戶授權 技術文檔分享&#xff1a; 本系統采用MySQL數據庫進行存儲&#xff0c;數據庫設計如下&#xff1a; 1.用戶表&#xff08;user&#xff09;&#xff1a; - 用戶ID&#xff08;user_id&#xff09; - 用戶名&#xff08;…

SELinux零知識學習二十七、SELinux策略語言之類型強制(12)

接前一篇文章:SELinux零知識學習二十六、SELinux策略語言之類型強制(11) 二、SELinux策略語言之類型強制 4. 類型規則 類型規則在創建客體或在運行過程中重新標記時指定其默認類型。在策略語言中定義了兩個類型規則: type_transtition在域轉換過程中標記行為發生時以及創…

詳解Vue中的computed和watch

詳解Vue中的computed和watch 前言原理computedcomputed特點computed有幾種創建方式應用 WatchWatch有幾種創建方式Watch主要內容Watch特性應用場景 computed和Watch區別 前言 在Vue當中&#xff0c;watch和computed都可以實現監聽的效果&#xff0c;本文主要是圍繞watch和comp…

【理解ARM架構】操作寄存器實現UART | 段的概念 | IDE背后的命令

&#x1f431;作者&#xff1a;一只大喵咪1201 &#x1f431;專欄&#xff1a;《理解ARM架構》 &#x1f525;格言&#xff1a;你只管努力&#xff0c;剩下的交給時間&#xff01; 目錄 &#x1f360;操作寄存器實現UART&#x1f35f;UART原理&#x1f35f;編程 &#x1f360;…

python——第十二天

內置模塊或者其他模塊學習方式&#xff1a; dir help os模塊負責程序與操作系統的交互&#xff0c;提供了訪問操作系統底層的接口&#xff1b;即os模塊提供了非常豐富的方法用來處理文件和目錄。 os&#xff1a; os.path 遍歷C盤代碼 import os from os import path def …

修改YOLOv5的模型結構第三彈

&#x1f368; 本文為&#x1f517;365天深度學習訓練營 中的學習記錄博客&#x1f356; 原作者&#xff1a;K同學啊 | 接輔導、項目定制&#x1f680; 文章來源&#xff1a;K同學的學習圈子 文章目錄 任務任務拆解 開始修改C2模塊修改yolo.py修改模型配置文件 模型訓練 上次已…

【工具使用】Keil工具的使用——常用配置介紹

Keil調試具體教程學習 目錄 ???????Keil調試具體教程學習 常用功能總結 &#xff08;2&#xff09;目標設置&#xff08;Target&#xff09; ①設置晶振頻率 ②跨模塊優化選項 ③微庫選項 &#xff08;3&#xff09;輸出設置&#xff08;Output&#xff09; ①…

插入排序(形象類比)

最近在看riscv手冊的時候&#xff0c;里面有一段代碼是插入排序&#xff0c;但是單看代碼的時候有點迷&#xff0c;沒看懂咋操作的&#xff0c;后來又查資料復習了一下&#xff0c;最終才把代碼看明白&#xff0c;所以寫篇博客記錄一下。 插入排序像打撲克牌 這是我聽到過比較形…

list的總結

目錄 1.什么是list 1.1list 的優勢和劣勢 優勢&#xff1a; 劣勢&#xff1a; 2.構造函數 2.1 default (1) 2.2 fill (2) 2.3 range (3) 2.4 copy (4) 3.list iterator的使用 3.1. begin() 3.2. end() 3.3迭代器遍歷 4. list容量函數 4.1. empty() 4.2. siz…

語音合成綜述Speech Synthesis

一、語音合成概述 語音信號的產生分為兩個階段&#xff0c;信息編碼和生理控制。首先在大腦中出現某種想要表達的想法&#xff0c;然后由大腦將其編碼為具體的語言文字序列&#xff0c;及語音中可能存在的強調、重讀等韻律信息。經過語言的組織&#xff0c;大腦通過控制發音器…

正整數分解

題目編號&#xff1a;Exp08-Basic01&#xff0c;GJBook3-12-05 題目名稱&#xff1a;正整數分解 題目描述&#xff1a;正整數n&#xff0c;按第一項遞減的順序依次輸出其和等于n的所有不增的正整數和式。 輸入&#xff1a;一個正整數n&#xff08;0<n≤15&#xff09;。 …

qRT-PCR相對定量計算詳解qPCR相對定量計算方式——2^-(??Ct) deta t

做完轉錄組分析之后&#xff0c;一般都要求做qRT-PCR來驗證二代測序得到的轉錄本表達是否可靠。熒光定量PCR是一種相對表達定量的方法&#xff0c;他的計算方法有很多&#xff0c;常用的相對定量數據分析方法有雙標曲線法&#xff0c;ΔCt法&#xff0c;2^-ΔΔCt法(Livak法)&a…

順序表基本操作全面解析

文章目錄 1.線性表2.順序表分類2.1 靜態順序表2.2 動態順序表 3. 順序表各接口實現1. 定義結構體(Seqlist)2. 結構體初始化(SLInit)3.檢查容量 (SLCheckCapacity)4.打印數據 (SLPrintf)5.插入操作5.1 從數據頭部插入(SLPushFront)5.2 從數據尾部插入(SLPushBack)5.3 從任意下標…

100天精通Python(可視化篇)——第106天:Pyecharts繪制多種炫酷桑基圖參數說明+代碼實戰

文章目錄 專欄導讀一、桑基圖介紹1. 桑基圖是什么?2. 桑基圖應用場景?二、桑基圖配置選項1. 導包2. add函數3. 分層設置三、桑基圖基礎1. 普通桑基圖2. 修改標簽位置3. 修改節點布局方向4、月度開支桑基圖書籍推薦專欄導讀 ????本文已收錄于《100天精通Python從入門到就…