จะสอบถาม MySQL ได้อย่างไร การใช้คำสั่ง like ในฐานข้อมูล MySQL

MySQL วิธีการสอบถามเช่น?ฐานข้อมูล mysqlการใช้คำสั่งชอบภาษาจีน

MySQL LIKE ข้อ

เราทราบดีว่าต้องใช้คำสั่ง SQL SELECT เพื่ออ่านข้อมูลใน MySQL และเราสามารถใช้คำสั่ง WHERE ในคำสั่ง SELECT เพื่อรับระเบียนที่ระบุได้

เครื่องหมายเท่ากับสามารถใช้ใน WHERE clause = กำหนดเงื่อนไขในการรับข้อมูล เช่น "chenweiliang_author = 'chenweiliang.com'"

แต่บางครั้งเราจำเป็นต้องได้รับระเบียนทั้งหมดที่เขตข้อมูล chenweiliang_author มีอักขระ "COM" เราจึงต้องใช้คำสั่งย่อย SQL LIKE ในคำสั่งย่อย WHERE

การใช้เครื่องหมายเปอร์เซ็นต์ในส่วนคำสั่ง SQL LIKE %อักขระที่ใช้แทนอักขระใดๆ ที่คล้ายกับเครื่องหมายดอกจันใน UNIX หรือนิพจน์ทั่วไป *.

หากไม่มีการใช้เครื่องหมายเปอร์เซ็นต์ %, LIKE ประโยคที่มีเครื่องหมายเท่ากับ = เอฟเฟคก็เหมือนกัน

ไวยากรณ์

ต่อไปนี้คือรูปแบบทั่วไปของคำสั่ง SQL SELECT เพื่ออ่านข้อมูลจากตารางข้อมูลโดยใช้คำสั่งย่อย LIKE:

SELECT field1, field2,...fieldN 
FROM table_name
WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'
  • คุณสามารถระบุเงื่อนไขใดๆ ในส่วนคำสั่ง WHERE
  • คุณสามารถใช้คำสั่ง LIKE ในส่วนคำสั่ง WHERE
  • คุณสามารถใช้คำสั่ง LIKE แทนเครื่องหมายเท่ากับ =.
  • LIKE มักจะเกี่ยวข้องกับ % ใช้ร่วมกันคล้ายกับการค้นหาเมตาคาแรคเตอร์
  • คุณสามารถระบุอย่างน้อยหนึ่งเงื่อนไขโดยใช้ AND หรือ OR
  • คุณสามารถใช้ส่วนคำสั่ง WHERE...LIKE ในคำสั่ง DELETE หรือ UPDATE เพื่อระบุเงื่อนไข

การใช้คำสั่ง LIKE ในพรอมต์คำสั่ง

ด้านล่างเราจะใช้ส่วนคำสั่ง WHERE...LIKE ในคำสั่ง SQL SELECT เพื่ออ่านข้อมูลจากตารางข้อมูล MySQL chenweiliang_tbl

ตัวอย่าง

ต่อไปนี้เป็นวิธีที่เราจะได้ฟิลด์ chenweiliang_author ในตาราง chenweiliang_tbl ด้วย COM สำหรับบันทึกทั้งหมดที่ลงท้ายด้วย:

คำสั่ง 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)

การใช้ส่วนคำสั่ง LIKE ในสคริปต์ PHP

คุณสามารถใช้ฟังก์ชัน PHP mysqli_query() และคำสั่ง SQL SELECT เดียวกันกับคำสั่ง WHERE...LIKE เพื่อรับข้อมูล

ฟังก์ชันนี้ใช้เพื่อรันคำสั่ง SQL แล้วส่งออกข้อมูลสำหรับการสืบค้นทั้งหมดผ่านฟังก์ชัน PHP mysqli_fetch_assoc()

แต่ถ้าเป็นคำสั่ง SQL ที่ใช้ WHERE...LIKE clause ใน DELETE หรือ UPDATE ก็ไม่จำเป็นต้องใช้ฟังก์ชัน mysqli_fetch_array()

ตัวอย่าง

ต่อไปนี้คือวิธีที่เราใช้สคริปต์ PHP เพื่ออ่านระเบียนทั้งหมดที่ลงท้ายด้วย COM ในฟิลด์ chenweiliang_author ในตาราง chenweiliang_tbl:

การทดสอบข้อ 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);
?>

หวัง Chen Weiliang บล็อก ( https://www.chenweiliang.com/ ) แชร์ "วิธีการสอบถาม MySQL ชอบ การใช้คำสั่ง like ในฐานข้อมูล MySQL" ซึ่งเป็นประโยชน์กับคุณ

ยินดีต้อนรับสู่การแบ่งปันลิงค์ของบทความนี้:https://www.chenweiliang.com/cwl-474.html

หากต้องการปลดล็อคเคล็ดลับที่ซ่อนอยู่เพิ่มเติม ยินดีต้อนรับเข้าร่วมช่อง Telegram ของเรา!

แชร์และกดไลค์ถ้าคุณชอบ! การแชร์และการถูกใจของคุณคือแรงบันดาลใจอย่างต่อเนื่องของเรา!

 

发表评论

ที่อยู่อีเมลของคุณจะไม่ถูกเผยแพร่ 必填项已用 * 标注

เลื่อนไปที่ด้านบน