1. Mệnh đề WHERE
Trong bài trên, ta đã biết câu lệnh truy vấn SELECT được sử dụng để nhận tập record từ các table trong cơ sở dữ liệu. Với mệnh đề điều kiện Where ta có thể chỉ lấy ra các record thỏa mãn điều kiện đã chỉ ra (dùng mệnh đề Where để lọc kết quả).
Tức là, ta sử dụng mệnh để Where để chỉ ra điều kiện chọn để chọn ra các record thỏa yêu cầu. Ở đây ta có thể sử dụng điều kiện đơn hoặc kết hợp nhiều điều kiện với nhau (sử dụng thêm các toán tử logic AND, OR).
Mệnh đề Where có thể sử dụng kết hợp với nhiều lệnh SQL khác như DELECT, UPDATE,…
Cú pháp lệnh SELECT với Where
SELECT field1, field2,...fieldN table_name1, table_name2...
[WHERE condition1 [AND [OR]] condition2.....]
Trong đó:
Mệnh đề Where được sử dụng như câu lệnh điều kiện IF trong các ngôn ngữ lập trình khác. Nó được sử dụng để so sánh một giá trị đã cho với giá trị chứa ở một field, của record nào đó, trong các table: Kết quả trả về là True: Nếu biểu thức logic sau where cho kết quả đúng; hoặc False: Nếu biểu thức logic sau where cho kết quả sai.
Danh sách các toán tử sử dụng với mệnh đề Where: = (bằng), != (không bằng, > (lớn hơn), >= (lớn hơn hoặc bằng), < (nhỏ hơn), <= (nhỏ hơn hoặc bằng).
Sử dụng mệnh đề Where tại dấu nhắc mysql>
Ví dụ 1:
root@ubutu# mysql -u root -p password;
Enter password:*******
mysql> use HSCB;
Database changed
mysql> SELECT * from lylich WHERE NoiSinh = 'Hue';
….
mysql>
Lệnh Select này chỉ chọn ra các record, trong table của cơ sở dữ liệu HSCB, mà có giá trị trường NoiSinh = Hue (sinh ở Huế).
Ví dụ 2:
root@ubutu# mysql -u root -p password;
Enter password:*******
mysql> use HSCB;
Database changed
mysql> SELECT * from lylich WHERE BINARY NoiSinh = 'Hue';
….
mysql>
Chỉ có một sự khác biệt giữa 2 lệnh Select ở hai ví dụ trên là: Từ khóa BINARY đi trước biểu thức điều kiện NoiSinh = ‘Hue’. Với từ khóa này MySQL sẽ áp dụng chế độ có phân biệt phân biệt chữ Hoa – chữ Thường.
Sử dụng mệnh đề Where trong script PHP:
<?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'a123456789z';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
If (!$conn)
{
die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT tutorial_id, tutorial_title, tutorial_author, submission_date
FROM tutorials_tbl WHERE tutorial_author = "Sanjay"';
//---------------------------------------------------------------------
mysql_select_db('TUTORIALS');
$retval = mysql_query( $sql, $conn);
If (!$retval)
{
die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
echo "Tutorial ID :{$row['tutorial_id']} <br> ".
"Title: {$row['tutorial_title']} <br> ".
"Author: {$row['tutorial_author']} <br> ".
"Submission Date : {$row['submission_date']} <br> ".
"--------------------------------<br>";
}
echo "Fetched data successfully\n";
mysql_close($conn);
?>
(Nguyễn Kim Tuấn - K.CNTT)
» Tin mới nhất:
» Các tin khác: