MySQL LIKE Fuzzy Query
우리는 MySQL에서 SQL SELECT 명령을 사용하여 데이터를 읽고, SELECT 문의 WHERE 절을 사용하여 지정된 레코드를 얻을 수 있다는 것을 알고 있습니다.
WHERE 절에서 등호 =를 사용하여 "runoob_author = 'RUNOOB.COM'"과 같이 데이터를 얻기 위한 조건을 설정할 수 있습니다.
그러나 때로는 runoob_author 필드에 "COM" 문자가 포함된 모든 레코드를 가져와야 하는 경우가 있으며 WHERE 절에서 SQL LIKE 절을 사용해야 합니다.
백분율 기호 % 문자는 SQL LIKE 절에서 모든 문자를 나타내는 데 사용되며 UNIX 또는 정규 표현식의 별표 *와 유사합니다.
퍼센트 기호 %를 사용하지 않으면 LIKE 절은 등호 =와 동일한 효과를 갖습니다.
Syntax
다음은 LIKE 절을 사용하여 데이터 테이블에서 데이터를 읽는 SQL SELECT 문의 일반 구문입니다.
SELECT field1, field2,...fieldN FROM table_name WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'
WHERE 절에 어떤 조건이라도 지정할 수 있습니다.
WHERE 절에 LIKE 절을 사용할 수 있습니다.
등호 = 대신 LIKE 절을 사용할 수 있습니다.
LIKE는 일반적으로 메타 문자 검색과 유사하게 %와 함께 사용됩니다.
AND 또는 OR를 사용하여 하나 이상의 조건을 지정할 수 있습니다.
DELETE 또는 UPDATE 명령에 WHERE...LIKE 절을 사용하여 조건을 지정할 수 있습니다.
mysql에서 퍼지 쿼리의 네 가지 용도:
One.%: 0개 이상의 문자를 나타냅니다. 어떤 종류와 길이의 문자도 일치할 수 있습니다. 경우에 따라 중국어인 경우에는 퍼센트 기호(%%)를 두 개 사용하여 표현해 주세요.
*참고: like '%龙%': "龙"
1을 포함하는 모든 레코드를 쿼리합니다. 쿼리 필드 + like '%龙%'
eg: '% Dragon%'과 같은 실제 이름이 있는 사용자에서 *를 선택합니다.
"龙"이라는 단어가 포함된 실명 필드를 검색하세요
2. '%龙%'와 같은 쿼리 필드와 '%文%'와 같은 쿼리 필드
예: 실명이 다음과 같은 사용자에서 *를 선택하세요. '%龙%' 및 '%文%'와 같은 실제 이름
= '%文%'와 같은 필드+ 쿼리 및 '%龙%'
과 같은 필드+ 쿼리: '%文%'와 같은 실제 이름이 있는 사용자에서 *를 선택하고 realname like '%龙%'
3. "龙"과 "文"
realname like'% Dragon%Wen%'을 모두 포함하는 모든 레코드를 쿼리합니다. 询 "Longwen의 모든 레코드를 쿼리합니다. ", "Dragon_wen", "_", "Dragon Wen_"일 수 있습니다.
"Dragon"이 앞에 있어야 하고 "text"라는 단어가 뒤에 있어야 합니다. * 사용자의 실제 이름이 '%龙%文%'인 곳을 선택하세요.realname like'%文%龙%':
모든 "文龙" 레코드를 쿼리합니다. "文_龙" "_文龙"Wenlong_"이 될 수 있습니다. 앞에 "Wen"이라는 단어가 있어야 하며, "dragon"이라는 단어가 뒤에 있습니다.실제 이름이 '%Wen%dragon%'인 경우 사용자에서 *를 선택하세요.
2._: 단일 단일 문자를 의미합니다. 단일 임의 문자와 일치합니다. 표현식의 문자 길이를 제한하는 데 자주 사용됩니다.
1. 중간에 "Lin"이라는 단어가 포함된 실제 이름 필드를 쿼리합니다.
(전제: 이름에 3자)
select * from user where realname like '_Lin_'=select * from user where realname like '%_Lin_%'
은 "Yu Linwen"과 같이 세 글자와 중간에 한 글자가 있는 실제 이름만 쿼리할 수 있습니다. "Lin ”
2. Lin의 이름을 쿼리합니다
(3글자로 된 이름)
select * 사용자의 실제 이름은 'Lin__'과 같습니다(여기에 가로 막대가 두 개 있습니다)
=select * 실제 이름이 '%숲__%'인 사용자(여기에 두 개의 가로 막대가 있습니다)
성 "Lin"의 실명을 쿼리하고, 실명의 문자 수는 3자여야 합니다.
select * from user where realname like '__rim'(여기에 두 개의 가로 막대가 있습니다)
= select * from user where realname like '%__Lin%'(여기에 두 개의 가로 막대가 있습니다)
쿼리 마지막 문자가 "Lin"인 이름을 찾으세요. 실명은 3자여야 합니다.
4 Lin
이라는 이름을 쿼리하세요(이름은 2글자만 가능)
실명이 'Lin_'과 같은 사용자에게서 *를 선택하세요
Lin
의 이름을 쿼리하세요(이름은 2자 또는 3자일 수 있습니다)
실명이 '%Lin_ %와 같은 사용자에게서 *를 선택하세요. '
5. 마지막 문자가 "Lin"인 이름을 쿼리
(이름은 두 글자만)
실명이 '_Lin'과 같은 사용자로부터 *를 선택하세요
마지막 문자가 "Lin"인 이름
(이름은 2자 또는 3자일 수 있음)select * from user where realname like '%_rim%'
3 .[ ]: 다음 중 하나를 나타냅니다. 괄호 안에 나열된 문자(정규 표현식과 유사) 문자, 문자열 또는 범위를 지정하고 일치하는 개체가 이들 중 하나여야 합니다. 실명이 '[Zhang Cai Wang] Jie'와 같은 사용자에서 *를 선택하세요
"Zhang Jie", "Cai Jie", "Wang Jie"
("Zhang Cai Wangjie" 대신) 등을 검색하세요. [ ] "0-4", "a-e"로 축약할 수 있는 일련의 문자(01234, abcde 등)가 있습니다. 'Lin[1-9]'와 같은 실제 이름이 쿼리되는 사용자에서 *를 선택하세요. Lin 1" "Lin 2"..."Lin 9"四.[^]: 괄호 안에 나열되지 않은 단일 문자를 나타냅니다. 해당 값은 []와 동일하지만 일치하는 개체가 지정된 문자가 아닌 다른 문자여야 합니다.'[^Zhang Cai Wang] Jie'와 같은 실명이 있는 사용자에서 *를 선택하세요
이름이 "Zhang", "Cai", "Wang" 등이 아닌 "Lin Jie", "Zhao Jie"를 검색하세요. 'Lin [^1-4]'와 같은 실제 이름이 "Lin 1"에서 "Lin 4"까지 제외되는 사용자에서 *를 선택하고 "Lin 5", "Lin 6"을 찾습니다... 추천 튜토리얼:mysql 비디오 튜토리얼
위 내용은 mysql의 퍼지 쿼리 구문은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!