>  기사  >  데이터 베이스  >  MySQL의 REGEXP와 LIKE의 차이점은 무엇입니까?

MySQL의 REGEXP와 LIKE의 차이점은 무엇입니까?

WBOY
WBOY앞으로
2023-05-30 13:58:062260검색

1. 일치하는 콘텐츠의 차이
LIKE에서는 전체 데이터가 일치해야 합니다. Like를 사용하면 이 필드의 모든 콘텐츠가 조건을 충족해야 합니다.

REGEXP는 부분 일치만 필요하며 일부 조각만 조건을 충족하면 됩니다. . 할 수 있다.

2. 일치 위치의 차이

LIKE는 전체 열과 일치합니다. 일치하는 텍스트가 열 값에 나타나면 LIKE는 이를 찾지 않으며 해당 행은 반환되지 않습니다(와일드카드를 사용하지 않는 한) ;

REGEXP는 열 값 내에서 일치합니다. 일치하는 텍스트가 열 값에 나타나면 REGEXP가 이를 찾아 해당 행을 반환하고 REGEXP는 전체 열 값을 일치시킬 수 있습니다(LIKE와 동일한 효과).

3. SQL 문에서 반환되는 데이터의 차이

LIKE 일치: 이 SQL 문은 데이터를 반환하지 않습니다.

REGEXP 일치: 이 SQL 문은 한 행의 데이터를 반환합니다.

4.

테이블이 있고, 100,000개가 넘는 데이터가 있는데, 특정 데이터 열의 예는 다음과 같습니다.

100000-200000-300001
100000-200000-300002
100000-200001-300003
100000-200001-300004
100000-200002-300005
当查询数据中含有 200001 时,
用LIKE 时sql:colName LIKE'%200001 %' ,用时4秒左右
用正则时sql:colName REGEXP '^.*200001 -.*$',用时2秒左右

위 내용은 MySQL의 REGEXP와 LIKE의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제