>백엔드 개발 >PHP 튜토리얼 >PHP에서 퍼지 쿼리를 구현하는 방법

PHP에서 퍼지 쿼리를 구현하는 방법

墨辰丷
墨辰丷원래의
2018-06-01 11:50:572927검색

이 글은 주로 퍼지 쿼리를 PHP로 구현하는 방법을 소개합니다. 관심 있는 친구들이 참고하면 좋을 것 같습니다.

패턴 쿼리

1. SQL 일치 모드

2. 정규식 일치 모드(일반적으로 권장되지 않음)

SQL 일치 모드

1. =또는! = 대신 LIKE 또는 NOT LIKE 연산자를 사용하세요.

2. SQL 일치 모드를 사용하면 MYSQL은 두 가지 종류의 와일드카드 문자를 제공합니다.

%는 임의의 수의 문자를 나타냅니다(0 포함).

_는 임의의 단일 문자를 나타냅니다.

3. 일치 형식에 위의 두 와일드카드 문자가 포함되지 않은 경우 쿼리 효과는 다음과 같습니다. = 또는! =

4. 일치 시에는 대소문자를 구분하지 않습니다

#查询用户名以某个字符开头的用户
#查询用户名以字符'l'开头的用户: l%
SELECT * FROM user WHERE username LIKE 'l%';
#查询用户名以某个字符结尾的用户
#查询用户名以字符'e'结尾的用户:e%
SELECT * FROM user WHERE username LIKE 'e%';
#查询用户名包含某个字符的用户
#查询用户名包含字符'o'的用户:%o%
SELECT * FROM user WHERE username LIKE '%o%';
#查询包含三个字符的用户
SELECT * FROM user WHERE username LIKE '___';
#查询用户名第二个字符为o的用户:_o%
SELECT * FROM user WHERE username LIKE '_o%';

와일드카드(정규식). *는 앞에 오는 0개 이상의 문자와 일치합니다.

x*는 임의 개수의 x 문자와 일치함을 의미합니다.

[..] 괄호 안의 모든 문자와 일치합니다.

[abc] ab 또는 c 문자와 일치합니다.

[a-z ] 모든 문자와 일치

                             -9]   모든 숫자와 일치                                                                                              [0-9] a 문자 a로 시작하는 것을 의미

$는 특정 문자 또는 문자열로 끝나는 것을 의미합니다.


s$는 문자 s로 끝나는 것을 의미합니다.

정규 표현식 일치 모드를 사용하세요. 사용되는 연산자는 다음과 같습니다:

REGEXP 또는 NOT REGEXP(RLIKE 또는 NOT RLIKE)

참고: 정규식이 패턴과 일치하면 정규식이 일치하는 필드의 어느 곳에나 나타납니다.

패턴이 일치하며 아무 것도 없습니다. 일치시키려면 양쪽에 와일드카드를 넣어야 합니다.

N을 가정하여 일치시키기 위해 와일드카드 문자만 사용하는 경우 일치하는 패턴은 N보다 크거나 같음을 나타냅니다. 문장?

... 3자 이상의 데이터와 일치

..... 4자 이상의 데이터와 일치

#사용자 이름이 문자 l로 시작하는 사용자를 쿼리합니다. ^l;

#정규식 작성 방법

SELECT * FROM user WHERE username REGEXP '^l';
#sql匹配模式写法:
SELECT * FROM user WHERE username LIKE 'l%';
#查询用户名正好是三个字符的用户:^...$;
#sql匹配模式写法:
SELECT * FROM user WHERE username LIKE '___';
#正则表达式写法
SELECT * FROM user WHERE username REGEXP '^...$';

요약: 위 내용은 이 글의 전체 내용입니다. 모든 분들의 공부에 도움이 되었으면 좋겠습니다.

관련 추천:


php
배열 처리 함수 추출에 대한 자세한 설명 및 예

php

in_array() 배열에 특정 값이 있는지 확인 자세한 설명

PHP 마젠토 배경 로그인할 수 없는 문제 해결책

위 내용은 PHP에서 퍼지 쿼리를 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.