Anyè Atik
miskl Ki jan yo mande tankou?baz done mysqlChinwa tankou itilizasyon deklarasyon
MySQL LIKE kloz
Nou konnen yo sèvi ak lòd SQL SELECT pou li done nan MySQL, epi nou ka itilize kloz WHERE nan deklarasyon SELECT pou jwenn dosye espesifye yo.
Ou ka itilize siy egal a nan kloz WHERE = Pou mete kondisyon yo pou jwenn done, tankou "chenweiliang_author = 'chenweiliang.com'".
Men pafwa nou bezwen jwenn tout dosye ki gen chenweiliang_author jaden ki gen "COM" karaktè, Lè sa a, nou bezwen sèvi ak kloz la SQL LIKE nan kloz la WHERE.
Sèvi ak siy pousan nan paraz SQL LIKE %karaktè pou reprezante nenpòt karaktè, menm jan ak asterisk la nan UNIX oswa ekspresyon regilye *.
Si pa gen siy pousan yo itilize %, kloz LIKE ak siy egal = Efè a se menm bagay la.
gramè
Sa ki anba la a se sentaks jeneral yon deklarasyon SQL SELECT pou li done ki sòti nan yon tab done lè l sèvi avèk kloz LIKE la:
SELECT field1, field2,...fieldN FROM table_name WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'
- Ou ka presize nenpòt kondisyon nan kloz WHERE la.
- Ou ka itilize kloz LIKE nan kloz WHERE.
- Ou ka itilize kloz LIKE olye pou yo siy egal a =.
- LIKE anjeneral asosye ak % Itilize ansanm, menm jan ak yon rechèch metakaraktè.
- Ou ka presize youn oswa plizyè kondisyon lè l sèvi avèk AND oswa OSWA.
- Ou ka itilize kloz WHERE...LIKE nan kòmand DELETE oswa UPDATE pou presize kondisyon yo.
Sèvi ak kloz LIKE nan èd memwa a
Anba a nou pral sèvi ak kloz WHERE...LIKE nan lòd SQL SELECT pou li done ki soti nan tab done MySQL chenweiliang_tbl.
Enstans
Sa ki anba la a se ki jan nou pral jwenn jaden an chenweiliang_author nan tab la chenweiliang_tbl ak COM pou tout dosye ki fini ak:
Deklarasyon SQL 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)
Sèvi ak kloz LIKE nan script PHP
Ou ka itilize fonksyon PHP mysqli_query() ak menm lòd SQL SELECT ak yon kloz WHERE...LIKE pou jwenn done.
Fonksyon sa a itilize pou egzekite kòmandman SQL epi answit done pwodiksyon pou tout demann atravè fonksyon PHP mysqli_fetch_assoc().
Men, si se yon deklarasyon SQL lè l sèvi avèk kloz WHERE...LIKE nan DELETE oswa UPDATE, pa gen okenn nesesite pou itilize mysqli_fetch_array() fonksyon an.
Enstans
Men ki jan nou itilize yon script PHP pou li tout dosye ki fini nan COM nan jaden chenweiliang_author nan tablo chenweiliang_tbl:
Tès kloz 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);
?>Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) pataje "Kijan pou fè rechèch MySQL tankou? Itilizasyon deklarasyon tankou nan baz done MySQL", ki itil ou.
Byenvini pataje lyen atik sa a:https://www.chenweiliang.com/cwl-474.html
