English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Wir wissen, dass wir in MySQL Daten lesen, indem wir SQL SELECT-Befehl verwenden Gleichzeitig können wir WHERE-Präfix in der SELECT-Anweisung verwenden, um spezifische Aufzeichnungen zu erhalten.
Das WHERE-Präfix kann das Gleichheitszeichen = verwenden, um Bedingungen zu setzen, um Daten zu erhalten, wie "w3codebox_author = 'oldtoolbag.com"".
Manchmal müssen wir aber w3Der codebox_author-Feld enthält alle Aufzeichnungen mit "COM"-Zeichen, in diesem Fall müssen wir WHERE...LIKE-Präfix im SQL-Befehl verwenden.
Das LIKE-Präfix verwendet das Prozentsymbol %, um beliebige Zeichen zu darstellen, was einem Stern in UNIX oder regulären Ausdrücken ähnelt. *.
Ohne den Prozentsatz % hat das LIKE-Präfix die gleiche Wirkung wie das Gleichheitszeichen =.
Hier ist die allgemeine Syntax der SQL SELECT-Anweisung mit LIKE-Präfix, um Daten aus der Datenbank auszulesen:
SELECT field1, field2,...fieldN FROM table_name WHERE field1 LIKE condition1 [AND [OR]] field2 ='somevalue'
Sie können im WHERE-Präfix jede Bedingung spezifizieren.
Sie können das LIKE-Präfix im WHERE-Präfix verwenden.
Sie können das LIKE-Präfix anstelle des Gleichheitszeichens = verwenden.
LIKE wird normalerweise mit % verwendet, was einem Metazeichen-Search ähnelt.
Sie können AND oder OR verwenden, um eine oder mehrere Bedingungen zu spezifizieren.
Sie können WHERE...LIKE-Präfix im DELETE- oder UPDATE-Befehl verwenden, um Bedingungen zu spezifizieren.
Hier verwenden wir WHERE...LIKE-Präfix in der SQL SELECT-Anweisung, um Daten aus der MySQL-Datentabelle w3codebox_tbl Daten lesen.
Hier sind wir3codebox_tbl-Tabelle w3codebox_author Feld enthält alle Einträge, die mit COM enden:
mysql> use w3codebox; Database changed mysql> SELECT * from w3codebox_tbl WHERE w3codebox_author LIKE '%COM'; +-----------+---------------+---------------+-----------------+ | w3codebox_id | w3codebox_title | w3codebox_author | submission_date | +-----------+---------------+---------------+-----------------+ | 3 | Lernen Sie Java | oldtoolbag.com | 2015-05-01 | | 4 | Lernen Sie Python | oldtoolbag.com | 2016-03-06 | +-----------+---------------+---------------+-----------------+ 2 Zeilen in Set (0.01 sec)
Sie können die mysqli_query() Funktion und den gleichen SQL SELECT Befehl mit WHERE...LIKE Klausel verwenden, um Daten zu erhalten.
Diese Funktion führt SQL-Befehle aus und gibt alle abgefragten Daten über die PHP-Funktion mysqli_fetch_array() aus.
Wenn Sie WHERE...LIKE Klausel in DELETE oder UPDATE SQL-Anweisungen verwenden, müssen Sie die mysqli_fetch_array() Funktion nicht verwenden.
Nachfolgend ist ein Beispiel für die Verwendung eines PHP-Skripts in w3codebox_tbl liest w3codebox_author Feld enthält alle Einträge, die mit COM enden:
<?php $dbhost = 'localhost'; // mysql服务器主机地址 $dbuser = 'root'; // mysql用户名 $dbpass = '123456'; // mysql用户名密码 $conn = mysqli_connect($dbhost, $dbuser, $dbpass); if(! $conn) { die('连接失败: ' . mysqli_error($conn)); } // 设置编码,防止中文乱码 mysqli_query($conn, "set names utf8'); $sql = 'SELECT w3codebox_id, w3codebox_title, w3codebox_author, submission_date FROM w3codebox_tbl WHERE w3codebox_author LIKE "%COM"'; mysqli_select_db($conn, 'w3codebox'); $retval = mysqli_query($conn, $sql); if(! $retval) { die('无法读取数据: ' . mysqli_error($conn)); } echo '<h2">基础教程网 mysqli_fetch_array 测试<h2"> echo '<table border="1><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>'; while($row = mysqli_fetch_array($retval, MYSQLI_ASSOC)) { echo "<tr><td> "{$row['w3codebox_id'}</td> ". "<td>{$row['w3codebox_title']} </td> ". "<td>{$row['w3codebox_author']} </td> ". "<td>{$row['submission_date']} </td> ". "</tr>"; } echo '</table>'; mysqli_close($conn); ?>
输出结果如下所示: