Paano mag-query ng MySQL like?Ang paggamit ng like statement sa MySQL database

Paano magsagawa ng LIKE query sa MySQL ? Ano ang mga tuntunin sa paggamit ng pahayag na LIKE sa mga database ng MySQL ?

MySQL LIKE clause

Alam naming gamitin ang SQL SELECT command para magbasa ng data sa MySQL, at magagamit namin ang WHERE clause sa SELECT statement para makuha ang mga tinukoy na record.

Maaaring gamitin ng sugnay na WHERE ang simbolong equals (=) upang itakda ang mga kundisyon para sa pagkuha ng datos, tulad ng "chenweiliang_author = 'chenweiliang.com'".

Ngunit kung minsan kailangan nating makuha ang lahat ng mga talaan na ang field ng chenweiliang_author ay naglalaman ng mga "COM" na character, pagkatapos ay kailangan nating gamitin ang SQL LIKE clause sa WHERE clause.

Ang sugnay na SQL LIKE ay gumagamit ng karakter na may simbolong porsyento na % upang kumatawan sa anumang karakter, katulad ng asterisk na * sa UNIX o mga regular na expression.

Kung hindi ginagamit ang simbolong porsyento na % , ang sugnay na LIKE ay magkakaroon ng parehong epekto gaya ng simbolong katumbas na = .

gramatika

Ang sumusunod ay ang pangkalahatang syntax ng isang SQL SELECT statement para magbasa ng data mula sa isang data table gamit ang LIKE clause:

SELECT field1, field2,...fieldN 
FROM table_name
WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'
  • Maaari mong tukuyin ang anumang kundisyon sa sugnay na WHERE.
  • Maaari mong gamitin ang LIKE clause sa WHERE clause.
  • Maaari mong gamitin ang sugnay na LIKE bilang kapalit ng equals sign =.
  • Ang LIKE ay kadalasang nauugnay sa % Ginagamit nang magkasama, katulad ng paghahanap sa metacharacter.
  • Maaari mong tukuyin ang isa o higit pang mga kundisyon gamit ang AT o O.
  • Maaari mong gamitin ang WHERE...LIKE clause sa DELETE o UPDATE na mga utos upang tukuyin ang mga kundisyon.

Gamit ang LIKE clause sa command prompt

Sa ibaba ay gagamitin natin ang WHERE...LIKE clause sa SQL SELECT command para basahin ang data mula sa MySQL data table na chenweiliang_tbl.

Pangyayari

Ang sumusunod ay isang listahan ng lahat ng talaan mula sa talahanayan ng chenweiliang_tbl na nagtatapos sa "COM" sa patlang na chenweiliang_author :

SQL UPDATE na pahayag:

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)

Paggamit ng LIKE clause sa PHP script

Maaari mong gamitin ang PHP function na mysqli_query() at ang parehong SQL SELECT command na may WHERE...LIKE clause para makakuha ng data.

Ginagamit ang function na ito upang magsagawa ng mga SQL command at pagkatapos ay mag-output ng data para sa lahat ng query sa pamamagitan ng PHP function mysqli_fetch_assoc().

Ngunit kung ito ay isang SQL statement gamit ang WHERE...LIKE clause sa DELETE o UPDATE, hindi na kailangang gamitin ang mysqli_fetch_array() function.

Pangyayari

Ganito kami gumamit ng PHP script para basahin ang lahat ng record na nagtatapos sa COM sa chenweiliang_author field sa chenweiliang_tbl table:

Pagsubok sa sugnay ng 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);
?>

Sana ay makatulong sa iyo ang artikulong "Paano magsagawa ng LIKE query sa MySQL? Paggamit ng LIKE statement sa MySQL database" na ibinahagi sa blog ni Chen Weiliang ( https://www.chenweiliang.com/ ).

Huwag mag-atubiling ibahagi ang link ng artikulong ito: https://www.chenweiliang.com/cwl-474.html

Upang i-unlock ang higit pang mga nakatagong trick🔑, maligayang pagdating sa aming Telegram channel!

Share and like kung nagustuhan mo! Ang iyong mga pagbabahagi at pag-like ay ang aming patuloy na pagganyak!

 

发表 评论

您的邮箱地址不会被公开。必填项已用*标注

Mag-scroll sa Tuktok