MariaDB - ชอบ Clause
WHERE clause ให้วิธีการดึงข้อมูลเมื่อการดำเนินการใช้การจับคู่แบบตรงทั้งหมด ในสถานการณ์ที่ต้องการผลลัพธ์หลายรายการที่มีลักษณะร่วมกันไฟล์LIKE อนุประโยครองรับการจับคู่รูปแบบกว้าง ๆ
ประโยค LIKE จะทดสอบการจับคู่รูปแบบโดยส่งคืนจริงหรือเท็จ รูปแบบที่ใช้ในการเปรียบเทียบยอมรับอักขระตัวแทนต่อไปนี้:“%” ซึ่งตรงกับจำนวนอักขระ (0 หรือมากกว่า) และ“ _” ซึ่งจะจับคู่อักขระเดี่ยว อักขระตัวแทน“ _” จะจับคู่เฉพาะอักขระภายในชุดซึ่งหมายความว่าจะไม่สนใจอักขระละตินเมื่อใช้ชุดอื่น การจับคู่จะไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่โดยค่าเริ่มต้นต้องมีการตั้งค่าเพิ่มเติมสำหรับความไวของตัวพิมพ์
คำสั่ง NOT LIKE ช่วยให้สามารถทดสอบเงื่อนไขตรงกันข้ามได้เช่นเดียวกับ not ตัวดำเนินการ
หากนิพจน์หรือรูปแบบคำสั่งประเมินเป็น NULL ผลลัพธ์จะเป็น NULL
ตรวจสอบไวยากรณ์คำสั่ง LIKE ทั่วไปที่ระบุด้านล่าง -
SELECT field, field2,... FROM table_name, table_name2,...
WHERE field LIKE condition
ใช้ประโยค LIKE ที่พรอมต์คำสั่งหรือภายในสคริปต์ PHP
พร้อมรับคำสั่ง
ที่พรอมต์คำสั่งเพียงใช้คำสั่งมาตรฐาน -
root@host# mysql -u root -p password;
Enter password:*******
mysql> use TUTORIALS;
Database changed
mysql> SELECT * from products_tbl
WHERE product_manufacturer LIKE 'XYZ%';
+-------------+----------------+----------------------+
| ID_number | Nomenclature | product_manufacturer |
+-------------+----------------+----------------------+
| 12345 | Orbitron 4000 | XYZ Corp |
+-------------+----------------+----------------------+
| 12346 | Orbitron 3000 | XYZ Corp |
+-------------+----------------+----------------------+
| 12347 | Orbitron 1000 | XYZ Corp |
+-------------+----------------+----------------------+
PHP Script โดยใช้ Like Clause
ใช้ mysql_query() ฟังก์ชันในคำสั่งที่ใช้ประโยค LIKE
<?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn ) {
die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT product_id, product_name, product_manufacturer, ship_date
FROM products_tbl WHERE product_manufacturer LIKE "xyz%"';
mysql_select_db('PRODUCTS');
$retval = mysql_query( $sql, $conn );
if(! $retval ) {
die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC)) {
echo "Product ID:{$row['product_id']} <br> ".
"Name: {$row['product_name']} <br> ".
"Manufacturer: {$row['product_manufacturer']} <br> ".
"Ship Date: {$row['ship_date']} <br> ".
"--------------------------------<br>";
}
echo "Fetched data successfully\n";
mysql_close($conn);
?>
เมื่อดึงข้อมูลสำเร็จคุณจะเห็นผลลัพธ์ต่อไปนี้ -
Product ID: 12345
Nomenclature: Orbitron 4000
Manufacturer: XYZ Corp
Ship Date: 01/01/17
----------------------------------------------
Product ID: 12346
Nomenclature: Orbitron 3000
Manufacturer: XYZ Corp
Ship Date: 01/02/17
----------------------------------------------
Product ID: 12347
Nomenclature: Orbitron 1000
Manufacturer: XYZ Corp
Ship Date: 01/02/17
----------------------------------------------
mysql> Fetched data successfully