MARIADB
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Mệnh đề LIKE trong MariaDB

Mệnh đề LIKE trong MariaDB là một công cụ mạnh mẽ hỗ trợ truy vấn dữ liệu linh hoạt bằng cách tìm kiếm theo mẫu (pattern matching), thay vì chỉ dựa vào so khớp chính xác như mệnh đề WHERE. Điều này đặc biệt hữu ích trong những trường hợp cần lấy dữ liệu có các đặc điểm chung hoặc tìm kiếm các giá trị chứa ký tự tương tự trong bảng dữ liệu. Với khả năng hỗ trợ ký tự đại diện như %_, mệnh đề LIKE giúp đơn giản hóa việc thực hiện các truy vấn phức tạp và mở rộng phạm vi tìm kiếm dữ liệu một cách hiệu quả.

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Công dụng của mệnh đề LIKE

  • LIKE trả về TRUE hoặc FALSE dựa trên sự so khớp của giá trị với mẫu được cung cấp.
  • Mẫu (pattern) có thể bao gồm các ký tự đại diện:
    • %: Đại diện cho bất kỳ số lượng ký tự nào (bao gồm không ký tự nào).
    • _: Đại diện cho chính xác một ký tự.
  • Tính năng so khớp trong LIKE không phân biệt chữ hoa và chữ thường (case-insensitive) theo mặc định. Muốn phân biệt, cần thêm các cài đặt đặc biệt.

Cú pháp cơ bản của mệnh đề LIKE trong MariaDB

SELECT field, field2,... FROM table_name, table_name2,...
WHERE field LIKE 'pattern';

Sử dụng mệnh đề LIKE trong dòng lệnh trong MariaDB

Ví dụ: Truy vấn dữ liệu có giá trị bắt đầu bằng XYZ.

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             |  
+-------------+----------------+----------------------+  

Trong ví dụ này:

  • XYZ% là mẫu dùng để tìm kiếm tất cả các giá trị bắt đầu bằng "XYZ" trong cột product_manufacturer.

Sử dụng mệnh đề LIKE trong PHP trong MariaDB

Dưới đây là ví dụ sử dụng PHP để áp dụng mệnh đề LIKE:

Bài viết này được đăng tại [free tuts .net]

<?php  
   $dbhost = 'localhost:3036';  
   $dbuser = 'root';  
   $dbpass = 'rootpassword';  
   $conn = mysql_connect($dbhost, $dbuser, $dbpass);  

   if (! $conn ) {  
      die('Không thể kết nối: ' . 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('Không thể lấy dữ liệu: ' . mysql_error());  
   }  

   while ($row = mysql_fetch_array($retval, MYSQL_ASSOC)) {  
      echo "Product ID: {$row['product_id']} <br> ".  
         "Tên sản phẩm: {$row['product_name']} <br> ".  
         "Nhà sản xuất: {$row['product_manufacturer']} <br> ".  
         "Ngày xuất xưởng: {$row['ship_date']} <br> ".  
         "--------------------------------<br>";  
   }  

   echo "Dữ liệu đã được lấy thành công\n";  
   mysql_close($conn);  
?>  

Kết quả sau khi thực thi thành công

Product ID: 12345  
Tên sản phẩm: Orbitron 4000  
Nhà sản xuất: XYZ Corp  
Ngày xuất xưởng: 01/01/17  
--------------------------------  
Product ID: 12346  
Tên sản phẩm: Orbitron 3000  
Nhà sản xuất: XYZ Corp  
Ngày xuất xưởng: 01/02/17  
--------------------------------  
Product ID: 12347  
Tên sản phẩm: Orbitron 1000  
Nhà sản xuất: XYZ Corp  
Ngày xuất xưởng: 01/02/17  
--------------------------------  
Dữ liệu đã được lấy thành công  

Lưu ý

  • Từ khóa NOT LIKE: Nếu muốn tìm dữ liệu không khớp mẫu, bạn có thể dùng từ khóa NOT LIKE, ví dụ:

SELECT * FROM products_tbl WHERE product_manufacturer NOT LIKE 'XYZ%';
  • NULL: Nếu biểu thức hoặc mẫu so khớp trả về giá trị NULL, kết quả của mệnh đề LIKE cũng sẽ là NULL.

  • Phân biệt chữ hoa/chữ thường: Với các cài đặt mặc định, LIKE không phân biệt chữ hoa/chữ thường. Nếu muốn phân biệt, sử dụng câu lệnh bổ sung như:

SELECT * FROM products_tbl WHERE BINARY product_name LIKE 'Orbitron%';

Mệnh đề LIKE là công cụ mạnh mẽ khi cần truy vấn dữ liệu dựa trên các mẫu cụ thể. Bạn nên sử dụng cẩn thận trong các bảng lớn để tránh giảm hiệu suất truy vấn.

Kết bài

Tóm lại, mệnh đề LIKE trong MariaDB là công cụ truy vấn dữ liệu linh hoạt, cho phép tìm kiếm dựa trên các mẫu ký tự thay vì chỉ so khớp chính xác. Nhờ sự hỗ trợ của các ký tự đại diện như %_, nó đáp ứng tốt các nhu cầu tìm kiếm phức tạp trong cơ sở dữ liệu. Việc áp dụng mệnh đề LIKE không chỉ tăng cường khả năng xử lý dữ liệu mà còn giúp tối ưu hóa hiệu quả làm việc, đặc biệt trong các tình huống cần phân tích dữ liệu với các đặc điểm chung.

Cùng chuyên mục:

Giao dịch (Transactions) trong MariaDB

Giao dịch (Transactions) trong MariaDB

Biểu thức chính quy (Regular Expression) trong MariaDB

Biểu thức chính quy (Regular Expression) trong MariaDB

Giá trị NULL trong MariaDB

Giá trị NULL trong MariaDB

Mệnh đề JOIN trong MariaDB

Mệnh đề JOIN trong MariaDB

Mệnh đề ORDER BY trong MariaDB

Mệnh đề ORDER BY trong MariaDB

Tìm hiểu lệnh DELETE trong MariaDB

Tìm hiểu lệnh DELETE trong MariaDB

Tìm hiểu câu lệnh UPDATE trong MariaDB

Tìm hiểu câu lệnh UPDATE trong MariaDB

Mệnh đề WHERE trong MariaDB

Mệnh đề WHERE trong MariaDB

Câu lệnh SELECT (Select Query) trong MariaDB

Câu lệnh SELECT (Select Query) trong MariaDB

Lệnh chèn dữ liệu (Insert Query) trong MariaDB

Lệnh chèn dữ liệu (Insert Query) trong MariaDB

Tìm hiểu xóa bảng trong MariaDB

Tìm hiểu xóa bảng trong MariaDB

Tạo bảng (Create Tables) trong MariaDB

Tạo bảng (Create Tables) trong MariaDB

Các loại dữ liệu (Data Types) trong MariaDB

Các loại dữ liệu (Data Types) trong MariaDB

Select Database trong MariaDB

Select Database trong MariaDB

Xóa cơ sở dữ liệu trong MariaDB

Xóa cơ sở dữ liệu trong MariaDB

Tạo cơ sở dữ liệu trong MariaDB

Tạo cơ sở dữ liệu trong MariaDB

Cách kết nối trong MariaDB

Cách kết nối trong MariaDB

Cú pháp PHP trong  MariaDB

Cú pháp PHP trong MariaDB

Hướng dẫn chi tiết quản trị MariaDB

Hướng dẫn chi tiết quản trị MariaDB

Hướng dẫn cài đặt MariaDB

Hướng dẫn cài đặt MariaDB

Top