ANY dan SOME adalah kedua-dua predikat dalam SQL yang digunakan untuk memadankan baris pertanyaan dan subquery utama Perbezaannya ialah: ANY: menyemak sama ada subquery mempunyai baris yang sepadan, tanpa mengira bilangan baris yang dikembalikan. BEBERAPA: Menyemak sama ada subkueri mempunyai sekurang-kurangnya satu baris yang sepadan, tetapi tidak mengambil berat tentang bilangan baris yang dikembalikan.
Perbezaan antara ANY dan SOME dalam SQL
Dalam pertanyaan SQL, ANY dan SOME ialah predikat yang digunakan untuk memadankan mana-mana atau sebahagian daripada baris yang dikembalikan oleh subquery dengan baris yang dikembalikan oleh pertanyaan utama. Tetapi mereka mempunyai perbezaan halus dalam penggunaan dan semantik.
Penggunaan
SESETENGAH: mewakili semakan kuantiti, iaitu, subkueri mesti mengembalikan sekurang-kurangnya satu baris yang sepadan, jika tidak, SESETENGAH syarat adalah palsu. Jika berbilang baris dikembalikan, SESETENGAH tidak mengambil kira nombornya.
<code class="sql">SELECT * FROM employees WHERE salary > ANY (SELECT salary FROM managers);</code>
SOME
<code class="sql">SELECT * FROM customers WHERE city = SOME (SELECT city FROM orders);</code>
Pertanyaan ini mengembalikan rekod pelanggan yang tinggal di sekurang-kurangnya satu daripada bandar yang dinyatakan dalam pesanan. SATU syarat dipenuhi jika sekurang-kurangnya satu bandar pesanan dalam jadual pesanan sepadan dengan bandar pelanggan.
RingkasanSEBARANG menyemak sama ada terdapat baris yang sepadan dalam subkueri, tanpa mengira bilangan baris yang dikembalikan.
SESETENGAH memeriksa sama ada terdapat sekurang-kurangnya satu baris yang sepadan dalam subkueri, tetapi tidak mengambil berat tentang bilangan baris yang dikembalikan.Atas ialah kandungan terperinci Perbezaan antara mana-mana dan beberapa dalam sql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!