Direktori Artikel
Bagaimana cara menggunakan klausa WHERE di MySQL ? Sintaks untuk beberapa kondisi dalam klausa WHERE.
MySQL klausa WHERE
Kita tahu menggunakan pernyataan SQL SELECT untuk membaca data dari tabel MySQL.
Untuk memilih data dari tabel secara kondisional, tambahkan klausa WHERE ke pernyataan SELECT.
tatabahasa
Berikut ini adalah sintaks umum dari pernyataan SQL SELECT untuk membaca data dari tabel data menggunakan klausa WHERE:
SELECT field1, field2,...fieldN FROM table_name1, table_name2... [WHERE condition1 [AND [OR]] condition2.....
- Anda dapat menggunakan satu atau beberapa tabel dalam pernyataan kueri, menggunakan koma di antara tabel, Pisahkan, dan gunakan pernyataan WHERE untuk mengatur kondisi kueri.
- Anda dapat menentukan kondisi apa pun dalam klausa WHERE.
- Anda dapat menentukan satu atau lebih kondisi menggunakan AND atau OR.
- Klausa WHERE juga dapat digunakan dengan perintah DELETE atau UPDATE SQL.
- Klausa WHERE mirip dengan kondisi if dalam bahasa prosedural, dan membaca data yang ditentukan sesuai dengan nilai bidang dalam tabel MySQL.
Berikut ini adalah daftar operator yang dapat digunakan pada klausa WHERE.
Contoh pada tabel di bawah ini mengasumsikan bahwa A adalah 10 dan B adalah 20
| operator | 描述 | Contoh |
|---|---|---|
| = | Tanda sama dengan, memeriksa apakah dua nilai sama, dan mengembalikan nilai true jika keduanya sama | (A = B) mengembalikan false. |
| <>, != | Tidak sama, periksa apakah dua nilai sama, kembalikan true jika tidak sama | (A != B) mengembalikan nilai true. |
| > | Lebih besar dari tanda, periksa apakah nilai di sebelah kiri lebih besar dari nilai di sebelah kanan, jika nilai di sebelah kiri lebih besar dari nilai di sebelah kanan, kembalikan true | (A > B) mengembalikan false. |
| < | Kurang dari tanda, periksa apakah nilai di sebelah kiri lebih kecil dari nilai di sebelah kanan, jika nilai di sebelah kiri lebih kecil dari nilai di sebelah kanan, kembalikan benar | (A < B) mengembalikan nilai true. |
| >= | Tanda lebih besar dari atau sama dengan, periksa apakah nilai di sebelah kiri lebih besar atau sama dengan nilai di sebelah kanan, jika nilai di sebelah kiri lebih besar atau sama dengan nilai di sebelah kanan, kembalikan true | (A >= B) mengembalikan false. |
| <= | Tanda kurang dari atau sama dengan, periksa apakah nilai di sebelah kiri lebih kecil atau sama dengan nilai di sebelah kanan, jika nilai di sebelah kiri lebih kecil atau sama dengan nilai di sebelah kanan, kembalikan benar | (A <= B) mengembalikan nilai true. |
Klausa WHERE sangat berguna jika kita ingin membaca data yang ditentukan dari tabel data MySQL.
Menggunakan kunci utama sebagai permintaan bersyarat dalam klausa WHERE sangat cepat.
Jika kriteria yang diberikan tidak memiliki rekaman yang cocok dalam tabel, kueri tidak mengembalikan data.
membaca data dari command prompt
Kami akan menggunakan klausa WHERE dalam pernyataan SQL SELECT untuk membaca data di tabel data MySQL chenweiliang_tbl:
Contoh
Contoh berikut akan membaca semua catatan di tabel chenweiliang_tbl di mana nilai bidang chenweiliang_author adalah Sanjay:
klausa SQL SELECT WHERE
Perbandingan string dalam klausa WHERE MySQL tidak peka huruf besar-kecil.Anda dapat menggunakan kata kunci BINARY untuk menentukan bahwa perbandingan string dalam klausa WHERE peka huruf besar/kecil.
Contoh berikut:
kata kunci binari
mysql> SELECT * from chenweiliang_tbl WHERE BINARY chenweiliang_author='chenweiliang.com'; Empty set (0.01 sec) mysql> SELECT * from chenweiliang_tbl WHERE BINARY chenweiliang_author='chenweiliang.com'; +-----------+---------------+---------------+-----------------+ | chenweiliang_id | chenweiliang_title | chenweiliang_author | submission_date | +-----------+---------------+---------------+-----------------+ | 3 | JAVA 教程 | chenweiliang.com | 2016-05-06 | | 4 | 学习 Python | chenweiliang.com | 2016-03-06 | +-----------+---------------+---------------+-----------------+ 2 rows in set (0.01 sec)
Contoh ini menggunakan kata kunci BINARY , yang peka terhadap huruf besar dan kecil, sehingga kondisi kueri chenweiliang_author='chenweiliang.com' tidak mengembalikan data apa pun.
Membaca data menggunakan skrip PHP
Anda dapat menggunakan fungsi PHP mysqli_query() dan perintah SQL SELECT yang sama dengan klausa WHERE untuk mendapatkan data.
Fungsi ini digunakan untuk mengeksekusi perintah SQL dan kemudian menampilkan semua data yang ditanyakan melalui fungsi PHP mysqli_fetch_array().
Contoh
Contoh berikut akan mengembalikan data dari tabel chenweiliang_tbl yang menggunakan nilai chenweiliang_author dalam tabel chenweiliang_tbl sebagai chenweiliang.com :
Tes klausa WHERE MySQL:
<?
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");
// 读取 chenweiliang_author 为 chenweiliang.com 的数据
$sql = 'SELECT chenweiliang_id, chenweiliang_title,
chenweiliang_author, submission_date
FROM chenweiliang_tbl
WHERE chenweiliang_author="chenweiliang.com"';
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 MySQL WHERE 子句测试<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_free_result($retval);
mysqli_close($conn);
?>Semoga artikel "Cara menggunakan klausa WHERE MySQL? Sintaks beberapa kondisi dalam klausa WHERE" yang dibagikan di blog Chen Weiliang ( https://www.chenweiliang.com/ ) bermanfaat bagi Anda.
Silakan bagikan tautan artikel ini: https://www.chenweiliang.com/cwl-462.html
