Câu lệnh SELECT (Select Query) trong MariaDB
Trong bài viết này, mình sẽ tìm hiểu cách truy vấn và chọn dữ liệu từ một bảng trong MariaDB.Câu lệnh SELECT được dùng để truy xuất các hàng dữ liệu được chọn từ bảng. Bạn có thể kết hợp với các từ khóa như UNION, ORDER BY, LIMIT, WHERE, GROUP BY...HAVING, và các truy vấn con (subquery) để mở rộng khả năng truy vấn.
Cú pháp tổng quát trong MariaDB
Cú pháp cơ bản của câu lệnh SELECT:
SELECT cot1, cot2,... FROM bang1, bang2,... WHERE dieu_kien;
Bạn có thể chỉ định bảng được sử dụng theo nhiều cách khác nhau, chẳng hạn:
- database_name.table_name: Chỉ định bảng từ một cơ sở dữ liệu cụ thể.
- table_name.column_name: Chỉ định một cột trong bảng.
- database_name.table_name.column_name: Chỉ định một cột từ bảng trong cơ sở dữ liệu cụ thể.
Các lựa chọn cho biểu thức SELECT trong MariaDB
Câu lệnh SELECT luôn yêu cầu có ít nhất một biểu thức select expressions, bao gồm:
Bài viết này được đăng tại [free tuts .net]
Tên cột: Chỉ định cột bạn muốn truy xuất.
Biểu thức: Kết hợp các toán tử và hàm để thao tác dữ liệu.
Dấu sao (*):
- Sử dụng
table_name.*
để chọn tất cả cột trong một bảng. - Sử dụng
*
để chọn tất cả cột từ các bảng được chỉ định trong mệnh đề FROM.
Thực thi câu lệnh SELECT
Bạn có thể thực thi câu lệnh SELECT qua dòng lệnh hoặc tập lệnh PHP.
Dùng dòng lệnh
Tại dấu nhắc lệnh, bạn thực hiện câu lệnh SELECT như sau:
root@host# mysql -u root -p password; Enter password:******* mysql> use PRODUCTS; Database changed mysql> SELECT * FROM products_tbl;
Kết quả:
+-------------+---------------+ | ID_number | Nomenclature | +-------------+---------------+ | 12345 | Orbitron 4000 | +-------------+---------------+
2. Dùng tập lệnh PHP
Bạn cũng có thể sử dụng câu lệnh SELECT trong tập lệnh PHP để lấy dữ liệu động.
Ví dụ tập lệnh PHP:
<?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'; 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 "Mã sản phẩm :{$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 giao hàng : {$row['ship_date']} <br>". "--------------------------------<br>"; } echo "Lấy dữ liệu thành công\n"; mysql_close($conn); ?>
Kết quả khi thực thi:
Mã sản phẩm: 12345 Tên sản phẩm: Orbitron 4000 Nhà sản xuất: XYZ Corp Ngày giao hàng: 01/01/17 -------------------------------- Mã sản phẩm: 12346 Tên sản phẩm: Orbitron 3000 Nhà sản xuất: XYZ Corp Ngày giao hàng: 01/02/17 -------------------------------- Lấy dữ liệu thành công