Dalam mysql, anda boleh menggunakan pernyataan SELECT dan kata kunci WHERE untuk melaksanakan pertanyaan bersyarat. dan kata kunci WHERE Digunakan untuk menentukan syarat pertanyaan.
Persekitaran pengendalian tutorial ini: sistem windows7, versi mysql8, komputer Dell G3.
Dalam mysql, anda boleh menggunakan pernyataan SELECT dan kata kunci WHERE untuk melaksanakan pertanyaan bersyarat.
PILIH pernyataan boleh menanyakan data. Data pertanyaan merujuk kepada menggunakan kaedah pertanyaan yang berbeza untuk mendapatkan data yang berbeza daripada pangkalan data mengikut keperluan Ia adalah operasi yang paling kerap digunakan dan penting.
WHERE kata kunci digunakan untuk menentukan syarat pertanyaan. Jika anda perlu menanyakan data secara bersyarat daripada jadual data, anda boleh menggunakan kata kunci WHERE.
Format sintaks adalah seperti berikut:
SELECT 字段名 FROM 数据表 WHERE 查询条件;
Syarat pertanyaan boleh:
Syarat pertanyaan dengan operator perbandingan dan operator logik
Syarat pertanyaan dengan ANTARA DAN kata kunci
Syarat pertanyaan dengan kata kunci IS NULL
Dengan syarat pertanyaan dengan IN kata kunci
Syarat pertanyaan dengan kata kunci SUKA
Pernyataan pertanyaan syarat tunggal
Syarat tunggal bermaksud hanya terdapat satu syarat pertanyaan selepas kata kunci WHERE.
Contoh 1
Soal nama pelajar dengan ketinggian 170cm dalam jadual data tb_students_info Penyataan SQL dan keputusan berjalan adalah seperti berikut.
mysql> SELECT name,height FROM tb_students_info -> WHERE height=170; +-------+--------+ | name | height | +-------+--------+ | Susan | 170 | +-------+--------+ 1 row in set (0.17 sec)
Seperti yang anda lihat, nilai medan ketinggian yang direkodkan dalam hasil pertanyaan adalah sama dengan 170. Jika tiada rekod yang sepadan dengan syarat pertanyaan dalam jadual data semasa membuat pertanyaan berdasarkan syarat yang ditentukan, sistem akan menggesa "Set kosong (0.00sec)".
Contoh 2
Soal nama pelajar yang berumur kurang daripada 22 tahun dalam jadual data tb_students_info Penyataan SQL dan keputusan berjalan adalah seperti berikut.
mysql> SELECT name,age FROM tb_students_info -> WHERE age<22; +------+------+ | name | age | +------+------+ | John | 21 | +------+------+ 1 row in set (0.05 sec)
Seperti yang anda lihat, nilai medan umur semua rekod dalam hasil pertanyaan adalah berumur kurang daripada 22 tahun dan rekod yang lebih besar daripada atau bersamaan dengan 22 tahun tidak dikembalikan.
Pernyataan pertanyaan berbilang syarat
Boleh terdapat berbilang syarat pertanyaan selepas kata kunci WHERE, yang boleh menjadikan hasil pertanyaan lebih tepat. Keadaan pertanyaan berbilang dipisahkan oleh operator logik DAN (&&), ATAU (||) atau XOR.
DAN: Rekod akan disoal hanya apabila ia memenuhi semua syarat pertanyaan.
ATAU: Rekod akan disoal hanya apabila ia memenuhi sebarang syarat pertanyaan.
XOR: Rekod akan disoal hanya apabila ia memenuhi salah satu syarat tetapi tidak memenuhi syarat yang lain.
Contoh 3
Soal maklumat pelajar yang umurnya lebih daripada 21 dan tinggi lebih daripada atau sama dengan 175 dalam jadual tb_students_info. Pernyataan SQL dan keputusan berjalan adalah seperti berikut.
mysql> SELECT name,age,height FROM tb_students_info -> WHERE age>21 AND height>=175; +--------+------+--------+ | name | age | height | +--------+------+--------+ | Henry | 23 | 185 | | Jim | 24 | 175 | | Thomas | 22 | 178 | +--------+------+--------+ 3 rows in set (0.00 sec)
Anda boleh melihat bahawa medan umur semua rekod dalam hasil pertanyaan adalah lebih besar daripada 21 dan medan ketinggian lebih besar daripada atau sama dengan 175.
Contoh 4
Soal maklumat pelajar yang berumur lebih daripada 21 tahun atau tinggi lebih daripada atau bersamaan dengan 175 dalam jadual tb_students_info adalah seperti berikut.
mysql> SELECT name,age,height FROM tb_students_info -> WHERE age>21 OR height>=175; +--------+------+--------+ | name | age | height | +--------+------+--------+ | Dany | 25 | 160 | | Green | 23 | 158 | | Henry | 23 | 185 | | Jane | 22 | 162 | | Jim | 24 | 175 | | Lily | 22 | 165 | | Susan | 23 | 170 | | Thomas | 22 | 178 | | Tom | 23 | 165 | +--------+------+--------+ 9 rows in set (0.00 sec)
Anda boleh melihat bahawa medan umur semua rekod dalam hasil pertanyaan lebih besar daripada 21 atau medan ketinggian lebih besar daripada atau sama dengan 175.
Contoh 5
Soal maklumat pelajar dalam jadual tb_pelajar_info yang umurnya lebih daripada 21 dan ketinggian kurang daripada 175 dan maklumat pelajar yang umurnya kurang daripada 21 dan ketinggian adalah lebih besar daripada atau sama dengan 175. Penyataan SQL dan keputusan berjalan adalah seperti berikut.
mysql> SELECT name,age,height FROM tb_students_info -> WHERE age>21 XOR height>=175; +-------+------+--------+ | name | age | height | +-------+------+--------+ | Dany | 25 | 160 | | Green | 23 | 158 | | Jane | 22 | 162 | | Lily | 22 | 165 | | Susan | 23 | 170 | | Tom | 23 | 165 | +-------+------+--------+ 7 rows in set (0.00 sec)
Seperti yang anda lihat, medan umur semua rekod dalam hasil pertanyaan adalah lebih daripada 21 dan medan ketinggian kurang daripada 175. Tiada rekod dalam jadual data tb_students_info yang medan umurnya kurang daripada 21 dan medan ketinggiannya lebih besar daripada atau sama dengan 175.
ATAU, DAN dan XOR boleh digunakan bersama, tetapi perhatikan keutamaan pengendali apabila menggunakannya.
Semakin banyak syarat pertanyaan, semakin sedikit rekod yang akan diambil. Oleh kerana lebih banyak syarat ditetapkan, lebih banyak sekatan pada pernyataan pertanyaan dan lebih sedikit rekod yang boleh memenuhi semua syarat. Untuk menjadikan rekod pertanyaan tepat seperti yang anda inginkan, anda boleh menetapkan syarat pertanyaan dalam pernyataan WHERE agar lebih spesifik.
[Cadangan berkaitan: tutorial video mysql]
Atas ialah kandungan terperinci Apakah pernyataan pertanyaan bersyarat mysql?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!