Adresář článků
mysql Jak se dotazovat jako?databáze mysqlČínské použití příkazů
Klauzule MySQL LIKE
Víme, že ke čtení dat v MySQL lze použít příkaz SQL SELECT a k získání zadaných záznamů můžeme použít klauzuli WHERE v příkazu SELECT.
Rovnítko lze použít v klauzuli WHERE = Chcete-li nastavit podmínky pro získávání dat, například "chenweiliang_author = 'chenweiliang.com'".
Někdy ale potřebujeme získat všechny záznamy, jejichž pole chenweiliang_author obsahuje znaky "COM", pak musíme použít klauzuli SQL LIKE v klauzuli WHERE.
Použití znaků procent v klauzulích SQL LIKE %znak pro reprezentaci libovolného znaku, podobně jako hvězdička v UNIXu nebo regulárních výrazech *.
Pokud není použit znak procenta %, klauzule LIKE se znaménkem rovná se = Efekt je stejný.
gramatika
Následuje obecná syntaxe příkazu SQL SELECT pro čtení dat z datové tabulky pomocí klauzule LIKE:
SELECT field1, field2,...fieldN FROM table_name WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'
- V klauzuli WHERE můžete zadat libovolnou podmínku.
- V klauzuli WHERE můžete použít klauzuli LIKE.
- Místo znaménka rovná se můžete použít klauzuli LIKE =.
- LIKE je obvykle spojeno s % Používá se společně, podobně jako hledání metaznaků.
- Pomocí AND nebo OR můžete zadat jednu nebo více podmínek.
- K určení podmínek můžete použít klauzuli WHERE...LIKE v příkazech DELETE nebo UPDATE.
Použití klauzule LIKE v příkazovém řádku
Níže použijeme klauzuli WHERE...LIKE v příkazu SQL SELECT ke čtení dat z datové tabulky MySQL chenweiliang_tbl.
Instance
Takto získáme pole chenweiliang_author v tabulce chenweiliang_tbl s KOM pro všechny záznamy končící na:
SQL příkaz UPDATE:
mysql> use chenweiliang; Database changed mysql> SELECT * from chenweiliang_tbl WHERE chenweiliang_author LIKE '%COM'; +-----------+---------------+---------------+-----------------+ | chenweiliang_id | chenweiliang_title | chenweiliang_author | submission_date | +-----------+---------------+---------------+-----------------+ | 3 | 学习 Java | chenweiliang.com | 2015-05-01 | | 4 | 学习 Python | chenweiliang.com | 2016-03-06 | +-----------+---------------+---------------+-----------------+ 2 rows in set (0.01 sec)
Použití klauzule LIKE ve skriptu PHP
K získání dat můžete použít funkci PHP mysqli_query() a stejný příkaz SQL SELECT s klauzulí WHERE...LIKE.
Tato funkce se používá k provádění příkazů SQL a následnému výstupu dat pro všechny dotazy prostřednictvím funkce PHP mysqli_fetch_assoc().
Ale pokud se jedná o SQL příkaz využívající klauzuli WHERE...LIKE v DELETE nebo UPDATE, není potřeba používat funkci mysqli_fetch_array().
Instance
Zde je návod, jak používáme skript PHP ke čtení všech záznamů končících na COM v poli chenweiliang_author v tabulce chenweiliang_tbl:
Test klauzule MySQL DELETE:
<?
php
$dbhost = 'localhost:3306'; // 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 chenweiliang_id, chenweiliang_title,
chenweiliang_author, submission_date
FROM chenweiliang_tbl
WHERE chenweiliang_author LIKE "%COM"';
mysqli_select_db( $conn, 'chenweiliang' );
$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, MYSQL_ASSOC))
{
echo "<tr><td> {$row['chenweiliang_id']}</td> ".
"<td>{$row['chenweiliang_title']} </td> ".
"<td>{$row['chenweiliang_author']} </td> ".
"<td>{$row['submission_date']} </td> ".
"</tr>";
}
echo '</table>';
mysqli_close($conn);
?>Blog Hope Chen Weiliang ( https://www.chenweiliang.com/ ) sdílené "Jak se dotazovat na MySQL jako? Využití podobného příkazu v MySQL databázi", což je pro vás užitečné.
Vítejte u sdílení odkazu na tento článek:https://www.chenweiliang.com/cwl-474.html
Chcete-li odemknout další skryté triky🔑, připojte se k našemu telegramovému kanálu!
Sdílejte a lajkujte, pokud se vám to líbí! Vaše sdílení a lajky jsou naší další motivací!