Dalam mysql, anda boleh menggunakan fungsi count() untuk menanyakan medan berulang Fungsi ini boleh mengembalikan hasil keadaan yang ditentukan Sintaksnya ialah "PILIH nilai medan COUNT(*) sebagai kiraan DARI nama jadual GROUP BY nilai medan mempunyai kiraan>1;".
Persekitaran pengendalian tutorial ini: sistem Windows 10, versi mysql8.0.22, komputer Dell G3.
Cara membuat pertanyaan medan pendua dalam mysql
Contoh Data jadual info akaun adalah seperti berikut:
Senario 1 Carian & penyahduplikasian data pendua medan tunggal
Kita perlu mencari data yang sama dalam medan akaun medan tunggal dalam jadual di atas.
Idea ini diterangkan secara ringkas dalam tiga langkah:
Langkah pertama
Untuk mencari data pendua, perkara pertama yang kita fikirkan ialah kerana ia adalah pendua, maka nombornya lebih besar daripada 1 Walaupun ia adalah pengulangan. Itulah fungsi kiraan.
Disebabkan yang kita nak semak adalah akaun medan tunggal, maka kita perlu kumpulkan mengikut dimensi medan akaun. Itulah kumpulan mengikut fungsi.
Kemudian pernyataan mysql yang kami tulis pada langkah pertama ialah:
SELECT account ,COUNT(account) as count FROM accountinfo GROUP BY account;
Hasil pertanyaan adalah seperti berikut:
Langkah 2
Ya, seperti yang kami fikirkan, data dengan kiraan lebih daripada 1 ialah data dengan akaun A dan B.
Kemudian kami menapis sedikit dan hanya mencari akaun data yang kiraan lebih besar daripada 1.
Dalam langkah kedua, gunakan untuk menyambung syarat penapis, dan pernyataan mysql bertulis ialah:
SELECT account FROM accountinfo GROUP BY account HAVING COUNT(account) > 1;
Hasil pertanyaan adalah seperti berikut:
Langkah ketiga
Data akaun pendua A dan B telah ditemui Seterusnya, kami hanya perlu menanyakan data lain dengan akaun A dan B bersama-sama.
Iaitu menggunakan data yang terdapat pada langkah kedua sebagai syarat subquery dan menggunakan fungsi IN.
Pernyataan mysql yang ditulis dalam langkah ketiga ialah:
SELECT * FROM accountinfo WHERE account IN ( SELECT account FROM accountinfo GROUP BY account HAVING COUNT(account) > 1 );
Hasil pertanyaan adalah seperti berikut:
Anda boleh lihat data pendua Mereka semua telah ditapis oleh kami.
Pembelajaran yang disyorkan: tutorial video mysql
Atas ialah kandungan terperinci Bagaimana untuk menanyakan medan pendua dalam mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!