MySQL에서 문자열 분할
MySQL에는 문자열을 분할하는 PHPexplore() 함수와 유사한 내장 함수가 없습니다. 그러나 약간의 독창성을 사용하면 비슷한 효과를 얻을 수 있습니다.
사용자 정의 분해 기능 만들기
사용자 정의 분해 기능을 생성하려면 다음 구문을 사용할 수 있습니다.
<code class="language-sql">CREATE FUNCTION SPLIT_STRING(str VARCHAR(255), delim VARCHAR(12), pos INT) RETURNS VARCHAR(255) RETURN REPLACE(SUBSTRING(SUBSTRING_INDEX(str, delim, pos), CHAR_LENGTH(SUBSTRING_INDEX(str, delim, pos-1)) + 1), delim, '');</code>
이 함수는 분할할 문자열(str), 구분 기호(delim), 반환할 항목 수(pos)의 세 가지 매개 변수를 허용합니다.
사용방법
사용자 정의 분해 기능을 사용하려면 다음과 같이 호출하세요.
<code class="language-sql">SELECT SPLIT_STRING('apple, pear, melon', ',', 1);</code>
이 쿼리는 쉼표로 구분된 문자열의 첫 번째 항목으로 "apple"을 반환합니다.
사용 사례
특정 사용 사례에서 서로 다른 데이터베이스 기록에서 동일하지만 역순으로 정렬된 스포츠 결과를 검색하려고 합니다. 사용자 정의 분해 기능을 사용하여 분수를 개별 숫자로 나누고 비교할 수 있습니다.
<code class="language-sql">WHERE opponent1.date = opponent2.date AND SPLIT_STRING(opponent1.score, '-', 1) = SPLIT_STRING(opponent2.score, '-', 2) AND SPLIT_STRING(opponent1.score, '-', 2) = SPLIT_STRING(opponent2.score, '-', 1)</code>
이 쿼리는 점수는 동일하지만 역순으로 일치 기록을 반환합니다.
위 내용은 문자열을 분할하기 위해 MySQL의 PHP 폭발() 함수를 시뮬레이션하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!