like e full text search
1.0.0
동작자는 WHERE 절에서 사용하여 열에 지정된 표준을 검색합니다.
$ conn = require __DIR__ . ' /utils/connection.php ' ;
$ term = $ argv [ 1 ] ?? null ;
$ term = ' % ' . $ term . ' % ' ;
** $ stmt = $ conn -> prepare ( ' SELECT * FROM posts WHERE body LIKE ?; ' );
$ stmt -> bind_param ( ' s ' , $ term );
$ stmt -> execute ();**
$ result = $ stmt -> get_result ();
$ posts = $ result -> fetch_all ( MYSQLI_ASSOC );
foreach ( $ posts as $ post ) {
echo $ post [ ' title ' ]. PHP_EOL ;
echo $ post [ ' body ' ]. PHP_EOL ;
echo PHP_EOL ;
}우리는 's'로 시작하는 도시에 사는 사람들을 선택하고 싶습니다.
1:SELECT * FROM Pessoas
2:WHERE cidade LIKE 'S%'
% 기호는 표준 전후에 패턴 (표준에서 누락 된 문자)을 정의하는 데 사용될 수 있습니다. 위의 연구의 결과는 다음과 같습니다.
이제 우리는 이름이 's'로 끝나는 도시에 사는 사람들을 선택하고 싶습니다.
1:SELECT * FROM Pessoas
2:WHERE cidade LIKE '%s'
이 연구의 결과는 다음과 같습니다.
풀 텍스트 색인을 통해 연구를 수행하기 위해 우리는 매치를 사용하고 함수에 대해 각각 명명 된 기능과 연구 할 값을 각각 사용합니다. 예를 참조하십시오 :
$ stmt = $ conn -> prepare ( ' SELECT *, MATCH(title, body) AGAINST(? IN BOOLEAN MODE) as score FROM posts ORDER BY score DESC ; ' );
$ stmt -> bind_param ( ' s ' , $ term );
$ stmt -> execute ();매치 : 전체 텍스트 색인에서 전체 텍스트 검색을 수행하는 데 사용되는 특수 구조. 앞에서 나와있는 예에서와 같이 match ()가 절에서 사용될 때, 반환 된 줄은 가장 큰 관련성으로 자동 분류됩니다 . 관련성 값은 비 음성 부동산 지점 번호입니다. 관련성이 없다는 것은 유사성을 의미합니다. 관련성은 줄 (문서)의 단어 수, 라인의 고유 단어 수, 컬렉션의 총 단어 수 및 특정 단어를 포함하는 줄의 수에 따라 계산됩니다 .
내용 검색 :
INSERT INTO posts (title, body) VALUES
( " Laravel framework " , " O laravel é muito utilizado hoje em dia " ),
( " CakePHP " , " Framework de desenvolvimento rápido " ),
( " Slim Framework " , " Micro framework, podemos utilizar o Eloquent do laravel nele " )