Bagaimana cara menggunakan pernyataan di mana MySQL? di mana klausa beberapa sintaks kondisional

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

MEMILIH * dari chenweiliang_tbl MANA chenweiliang_penulis='Chen Weiliang博客';

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);
?>

发表 评论

您的邮箱地址不会被公开。必填项已用*标注

Gulir ke Atas