Melaksanakan Operasi Tolak dalam MySQL
Dalam MySQL, melaksanakan operasi tolak tidak disokong secara langsung seperti dalam pangkalan data Oracle. Walau bagaimanapun, terdapat cara alternatif untuk mencapai hasil yang serupa menggunakan NOT IN atau teknik lain.
Memahami Masalah
Anda mempunyai tiga jadual:
Anda bertujuan untuk menggabungkan jadual ini dan memaparkan hasilnya sebagai:
SELECT query_1 - SELECT query_2
Penyelesaian Menggunakan NOT IN
MySQL menyediakan NOT IN operator, yang boleh digunakan untuk meniru operasi tolak. Pertanyaan di bawah memanfaatkan NOT IN untuk mencapai hasil yang diingini:
SELECT service_details.Service_Code FROM service_details WHERE service_details.Service_Code IN ( SELECT servicing_states.Service_Code FROM servicing_states WHERE servicing_states.State = 'California' ) AND service_details.Service_Code NOT IN ( SELECT exception.Service_Code FROM exception WHERE exception.State = 'California' );
Pertanyaan ini memilih Service_Code daripada jadual Service_Details yang wujud dalam jadual Servicing_States untuk California tetapi tidak terdapat dalam jadual Exception untuk California. Pendekatan ini meniru kesan operasi tolak.
Atas ialah kandungan terperinci Bagaimana untuk Melakukan Operasi Tolak dalam MySQL Menggunakan NOT IN?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!