MySQL에서 하위 문자열 발생 횟수 계산 및 빈도별 정렬
문제:
MySQL 데이터베이스 문자열 필드가 포함되어 있으며 다음이 필요합니다. to:
해결책:
이를 달성하려면 다음을 활용할 수 있습니다. 코드:
SELECT (CHAR_LENGTH(str) - CHAR_LENGTH(REPLACE(str, substr, ''))) / CHAR_LENGTH(substr) AS cnt FROM table_name ORDER BY cnt DESC
설명:
예시 사용법:
mysql> select (CHAR_LENGTH('asd') - CHAR_LENGTH(REPLACE('asd', 's', ''))) / CHAR_LENGTH('s'); +-----------------------------------------------------------------+ | (CHAR_LENGTH('asd') - CHAR_LENGTH(REPLACE('asd', 's', ''))) / CHAR_LENGTH('s') | +-----------------------------------------------------------------+ | 1.0000 | +-----------------------------------------------------------------+ mysql> select host, (CHAR_LENGTH(host) - CHAR_LENGTH(REPLACE(host, 'l', ''))) / CHAR_LENGTH('l') AS cnt from user; +-----------+--------+ | host | cnt | +-----------+--------+ | 127.0.0.1 | 0.0000 | | honeypot | 0.0000 | | honeypot | 0.0000 | | localhost | 2.0000 | | localhost | 2.0000 | +-----------+--------+
참고:
이 방법은 신뢰할 수 있지만 대규모 데이터 세트의 경우 잠재적으로 리소스 집약적이라는 잠재적인 단점이 있습니다.
위 내용은 MySQL에서 하위 문자열 발생을 계산하고 빈도별로 정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!