mysql의 퍼지 쿼리 4가지 사용법 소개
이 글에서는 MySQL의 퍼지 쿼리 4가지 사용법을 주로 소개합니다. 도움이 필요한 친구들이 참고할 수 있습니다.
다음은 mysql에서 퍼지 쿼리의 네 가지 용도를 소개합니다.
1 %:
은 0개 이상의 문자를 나타냅니다. 어떤 종류와 길이의 문자라도 일치할 수 있습니다. 경우에 따라 중국어인 경우에는 퍼센트 기호(%%)를 2개 사용하여 표현해 주세요.
예를 들어 SELECT * FROM [user] WHERE u_name LIKE '%三%'
는 u_name을 "Zhang San", "Zhang Cat San", "Three-legged Cat"으로 처리합니다. , "당대장경" 등에서 "3"이 포함된 기록을 모두 찾습니다.
추가로 u_name에 "三"과 "cat"이 모두 포함된 레코드를 찾으려면
SELECT * FROM [user] WHERE u_name LIKE '%三%' AND u_name LIKE '%猫%'
SELECT * FROM [user] WHERE u_name을 사용하는 경우 및 조건을 사용하세요. LIKE ' %三%cat%'
'세발고양이'는 검색이 가능하지만, 조건을 만족하는 '장캣삼'은 검색이 불가능합니다.
2 _:
은 단일 문자를 나타냅니다. 표현식의 문자 길이를 제한하는 데 자주 사용되는 단일 임의 문자와 일치합니다.
예: SELECT * FROM [user] WHERE u_name LIKE '_三_'
"만 찾기 Tang Sanzang" 이런 식으로 u_name은 세 글자로 구성되고 가운데 글자는 "三"입니다.
또 다른 예는 SELECT * FROM [user] WHERE u_name LIKE '三__'; "三级" Cat"만 찾을 수 있으며 이름은 세 글자이고 첫 번째 문자는 "三"입니다.
3 [ ]:
은 괄호 안에 나열된 문자 중 하나를 나타냅니다( 정규식) . 일치하는 개체가 그 중 하나여야 하는 문자, 문자열 또는 범위를 지정합니다.
예를 들어 SELECT * FROM [user] WHERE u_name LIKE '[Zhang Li Wang] San'은 "Zhang San", "Li San", "Wang San"("Zhang Li Wang San 대신)을 찾습니다. " );
[ ]에 일련의 문자(01234, abcde 등)가 포함된 경우 "0-4", "a-e"
SELECT * FROM [user] WHERE u_name LIKE '老[1-9]' 将找出“老1”、“老2”、……、“老9”;
4로 축약할 수 있습니다. ]:
은 괄호 안에 나열되지 않은 단일 문자를 나타냅니다. 해당 값은 []와 동일하지만 일치하는 개체가 지정된 문자가 아닌 다른 문자여야 합니다.
예를 들어 SELECT * FROM [user] WHERE u_name LIKE '[^Zhang Li Wang] San'은 성이 "Zhang", "Li" 및 "Zhang Li Wang] San"이 아닌 "Zhao San" 및 "Sun San"을 찾습니다. "Wang" " etc.;
SELECT * FROM [user] WHERE u_name LIKE '老[^1-4]'; 将排除“老1”到“老4”,寻找“老5”、“老6”、……
5 쿼리 내용에 와일드카드가 포함된 경우
와일드카드로 인해 특수문자 "%", "를 쿼리합니다. _", " [" 문은 정상적으로 구현이 불가능하지만, "[]"로 묶어야 특수문자를 정상적으로 조회할 수 있습니다. 이를 바탕으로 다음 함수를 작성합니다.
function sqlencode(str) str=replace(str,"';","';';")
str=replace(str,"[","[[]") ';이 문장이 먼저 와야 합니다. str=replace(str,"_", "[_]") str=replace(str,"%","[%]") sqlencode=str end function
위는 mysql 고급(6) 퍼지 쿼리의 네 가지 사용법입니다. 소개 내용, 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!