欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mysql判斷字符串是否存在幾種常見方式

 更新時(shí)間:2024年05月29日 09:59:41   作者:fengchengwu2012  
寫SQL語句我們經(jīng)常需要判斷一個(gè)字符串中是否包含另一個(gè)字符串,下面這篇文章主要給大家介紹了關(guān)于mysql判斷字符串是否存在的幾種常見方式,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下

sql判斷某個(gè)字符是否包含在字段中,在mysql通常有以下幾種方式

一、LIKE模糊查詢

LIKE是用于模糊查找的關(guān)鍵字,使用%作為通配符,分左模式、有模式、左右模式

SELECT   '貂蟬'  LIKE  '%貂蟬%';

二、FIND_IN_SET函數(shù)

FIND_IN_SET(str,strlist) : str 要查詢的字符串,strlist  需查詢的字段,參數(shù)以”,”分隔;該函數(shù)的作用是查詢字段(strlist)中是否包含(str)的結(jié)果,返回結(jié)果為null或記錄。

SELECT   FIND_IN_SET('貂蟬','西施,昭君,貂蟬,趙飛燕');

三、LOCATE函數(shù)

LOCATE(substr,str,pos)函數(shù)是MySQL中用于查找某個(gè)字符串在另一個(gè)字符串中第一次出現(xiàn)的位置的函數(shù)。它返回目標(biāo)字符串在源字符串中的起始位置,如果目標(biāo)字符串不存在,則返回0。與find_in_set相比,LOCATE不受分隔符約束,它是一種字符串匹配模式,但是無法直接返回記錄,需要手動(dòng)判斷

查詢字符串位置

SELECT   LOCATE('西施','西施,昭君,貂蟬,趙飛燕');
SELECT   LOCATE('貂蟬','西施、昭君、貂蟬、趙飛燕');
SELECT   LOCATE('貂蟬','西施昭君貂蟬趙飛燕');

查詢記錄

SELECT  LOCATE('貂蟬','西施、昭君、貂蟬、趙飛燕')>0;

四、INSTR函數(shù)

INSTR(str,substr)I在一個(gè)字符串(str)中搜索指定的字符(substr),返回發(fā)現(xiàn)指定的字符的位置(index)。在字符串str里面,字符串substr出現(xiàn)的第一個(gè)位置(index),index是從1開始計(jì)算,如果沒有找到就直接返回0,沒有返回負(fù)數(shù)的情況。

SELECT  INSTR('西施、昭君、貂蟬、趙飛燕、西施、','西施');
SELECT  INSTR('西施、昭君、貂蟬、趙飛燕','昭君') > 0;

從使用上看INSTR和LOCATE的作用基本相同,僅僅是用法上有極小的差異,主要在參數(shù)列表上

附:SQL中獲取一個(gè)長字符串中某個(gè)字符串出現(xiàn)次數(shù)的簡單方法

--  =============================================
--  Author:        <何劍偉>
--  Create date: <2008-03-19>
--  Description:    <獲取一個(gè)長字符串中某個(gè)字符串出現(xiàn)次數(shù)>
--  =============================================
 ALTER   FUNCTION   [ dbo ] . [ fun_RepeatCharNum ]
(    
     @CodeString   varchar ( 2000 ),
     @RepeatString   varchar ( 200 )
)
 RETURNS   int  
 AS
 BEGIN  
     DECLARE
         @RepeatStringLen   int ,     -- 檢測重復(fù)字符的長串
          @TempString   varchar ( 500 )     -- 臨時(shí)字符串(總比@RepeatString多一個(gè)即長度大1)
     
     SET   @RepeatStringLen = LEN ( @RepeatString )
     SET   @TempString = Replicate ( ' | ' , @RepeatStringLen ) + ' | '

     RETURN   LEN ( REPLACE ( @CodeString , @RepeatString , @TempString )) - LEN ( @CodeString )
 END

到此這篇關(guān)于mysql判斷字符串是否存在幾種常見方式的文章就介紹到這了,更多相關(guān)sql判斷字符串是否存在內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論