Pemilihan Rekod Mengikut Nilai Spesifik dalam Python
Jika perlu memilih rekod daripada sesuatu
kelompok nilai medan, anda boleh menggunakan
perintah IN. Sebagai contoh, anda boleh memilih
rekod yang medan name mempunyai
nilai 'user1', 'user3'
atau 'user4'. Ia akan kelihatan
seperti ini: WHERE id IN ('user1',
'user3', 'user4').
Pada dasarnya, untuk perkara seperti ini anda juga boleh menggunakan
perintah OR,
maka contoh pertama akan kelihatan seperti ini:
WHERE id=1 OR id=3 OR
id=7 OR id=14 OR id=28.
Pilihan dengan IN masih kelihatan lebih mudah
dan elegan.
Contoh
Mari pilih pengguna yang medan id
mempunyai nilai 1, 3, 5:
query = "SELECT * FROM users WHERE id IN (1, 3, 5)"
Hasil kod yang dilaksanakan:
{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400}
{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
Contoh
Perintah IN boleh digabungkan dengan
perintah lain dalam pertanyaan. Mari
tulis semula contoh sebelumnya, dengan menambah syarat
bahawa usia pengguna mestilah lebih daripada
23 tahun:
query = "SELECT * FROM users WHERE id IN (1, 3, 5) AND age>23"
Hasil kod yang dilaksanakan:
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
Tugas Praktikal
Dapatkan pengguna yang gaji mereka mempunyai
nilai 400 dan 900.
Dapatkan pengguna yang usia mereka ialah
25, 27 dan 28 tahun. Pada
masa yang sama id lebih daripada 2.