เช่นเดียวกับตัวดำเนินการถูกใช้ในประโยคที่จะค้นหามาตรฐานที่ระบุไว้ในคอลัมน์
$ 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'
ผลลัพธ์สำหรับการวิจัยนี้คือ:
เพื่อทำการวิจัยผ่านดัชนี FullText เราใช้การจับคู่และฟังก์ชั่นซึ่งตั้งชื่อตามฟิลด์และค่าที่จะทำการวิจัยตามลำดับ ดูตัวอย่าง:
$ 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 ();การจับคู่: การก่อสร้างพิเศษที่ใช้ในการค้นหาข้อความเต็มรูปแบบในดัชนีข้อความเต็ม เมื่อการจับคู่ () ถูกใช้ในประโยคดังที่แสดงไว้ก่อนหน้านี้ บรรทัดที่ส่งคืนจะถูกจัดประเภทโดยอัตโนมัติด้วยความเกี่ยวข้องที่ยิ่งใหญ่ที่สุดก่อน ค่าความเกี่ยวข้องเป็นตัวเลขลอยตัวที่ไม่เป็นลบ ไม่มีความเกี่ยวข้องหมายถึงความคล้ายคลึงกันใด ๆ ความเกี่ยวข้องถูกคำนวณตามจำนวนคำในบรรทัด (เอกสาร) จำนวนคำที่ไม่ซ้ำกันในบรรทัดจำนวนทั้งหมดของคำในคอลเลกชันและจำนวนบรรทัดที่มีคำเฉพาะ
เนื้อหาค้นหา:
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 " )