SQL實(shí)現(xiàn)模糊查詢的四種方法總結(jié)
模糊查詢是針對(duì)字符串操作的,類似正則表達(dá)式,沒(méi)有正則表達(dá)式強(qiáng)大。
一、一般模糊查詢
1. 單條件查詢
//查詢所有姓名包含“張”的記錄 select * from student where name like '張'
2. 多條件查詢
//查詢所有姓名包含“張”,地址包含四川的記錄 select * from student where name like '張' and address like '四川' //查詢所有姓名包含“張”,或者地址包含四川的記錄 select * from student where name like '張' or address like '四川'
二、利用通配符查詢
通配符:_ 、% 、[ ]
1. _ 表示任意的單個(gè)字符
//查詢所有名字姓張,字長(zhǎng)兩個(gè)字的記錄 select * from student where name like '張_' //查詢所有名字姓張,字長(zhǎng)三個(gè)字的記錄 select * from student where name like '張__'
2. % 表示匹配任意多個(gè)任意字符
//查詢所有名字姓張,字長(zhǎng)不限的記錄 select * from student where name like '張%' //查詢所有名字姓張,字長(zhǎng)兩個(gè)字的記錄 select * from student where name like '張%'and len(name) = 2
3. [ ]表示篩選范圍
//查詢所有名字姓張,第二個(gè)為數(shù)字,第三個(gè)為燕的記錄 select * from student where name like '張[0-9]燕' //查詢所有名字姓張,第二個(gè)為字母,第三個(gè)為燕的記錄 select * from student where name like '張[a-z]燕' //查詢所有名字姓張,中間為1個(gè)字母或1個(gè)數(shù)字,第三個(gè)為燕的名字。字母大小寫可以通過(guò)約束設(shè)定,不區(qū)分大小寫 select * from student where name like '張[0-9a-z]燕' //查詢所有名字姓張,第二個(gè)不為數(shù)字,第三個(gè)為燕的記錄 select * from student where name like '張[!0-9]燕'? //查詢名字除了張開(kāi)頭妹結(jié)尾中間是數(shù)字的記錄 select * from student where name not like '張[0-9]燕'
4. 查詢包含通配符的字符串
//查詢姓名包含通配符%的記錄 ?select * from student where name like '%[%]%'?? ??? ??? ??? ?//通過(guò)[]轉(zhuǎn)義 //查詢姓名包含[的記錄 ?select * from student where name like '%/[%' escape '/'?? ?//通過(guò)指定'/'轉(zhuǎn)義 //查詢姓名包含通配符[]的記錄 ?select * from student where name like '%/[/]%' escape '/'?? ?//通過(guò)指定'/'轉(zhuǎn)義
到此這篇關(guān)于SQL實(shí)現(xiàn)模糊查詢的四種方法總結(jié)的文章就介紹到這了,更多相關(guān)SQL 模糊查詢內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
揭秘SQL Server 2014有哪些新特性(2)-固態(tài)硬盤 Buffer Pool(緩沖池) 擴(kuò)展
SQL Server 2014 中引入的緩沖池?cái)U(kuò)展提供數(shù)據(jù)庫(kù)引擎緩沖池的非易失性隨機(jī)存取內(nèi)存(即固態(tài)硬盤)擴(kuò)展的無(wú)縫集成,從而顯著提高 I/O 吞吐量。 那么今天我們來(lái)探究下,這個(gè)功能到底如何強(qiáng)悍吧2014-08-08
小系統(tǒng)單據(jù)自動(dòng)生成存儲(chǔ)過(guò)程
此處判斷有兩種方法:一種是根據(jù)傳入6位日期判斷;另一種根據(jù)單據(jù)創(chuàng)建日期字段(前提:表有創(chuàng)建時(shí)間字段)2010-07-07
SQL Server INSERT操作實(shí)戰(zhàn)與腳本生成方法
在SQL Server數(shù)據(jù)庫(kù)操作中, INSERT語(yǔ)句是最基礎(chǔ)且使用頻率極高的命令之一,用于向表中添加新的數(shù)據(jù)記錄,本文詳細(xì)介紹了INSERT操作的應(yīng)用場(chǎng)景與實(shí)現(xiàn)技巧,包括數(shù)據(jù)復(fù)制、批量插入、事務(wù)控制、錯(cuò)誤處理等內(nèi)容,感興趣的朋友跟隨小編一起看看吧2025-10-10
SQLyog連接MySQL8.0報(bào)2058錯(cuò)誤的完美解決方法
這篇文章主要介紹了SQLyog連接MySQL8.0報(bào)2058錯(cuò)誤的完美解決方法,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-10-10

