Pengiraan Berbeza dengan "COUNT DISTINCT" MySQL
Apabila bekerja dengan data pangkalan data, selalunya perlu memahami kiraan nilai yang berbeza untuk tertentu sifat-sifat. Dalam MySQL, fungsi "COUNT DISTINCT" membolehkan anda mencapainya.
Pertimbangkan senario di mana anda perlu menentukan bilangan lawatan tapak yang berbeza ke tapak web anda semalam. Menggunakan pertanyaan berikut:
SELECT DISTINCT `user_id` as user, `site_id` as site, `ts` as time FROM `cp_visits` WHERE ts >= DATE_SUB(NOW(), INTERVAL 1 DAY)
Walau bagaimanapun, pertanyaan ini mengembalikan berbilang hasil dengan site_id yang sama. Untuk mendapatkan kiraan log masuk tapak yang berbeza sahaja, anda perlu mengubah suai pertanyaan anda:
Select Count(Distinct user_id) As countUsers , Count(site_id) As countVisits , site_id As site From cp_visits Where ts >= DATE_SUB(NOW(), INTERVAL 1 DAY) Group By site_id
Penjelasan:
Hasil pertanyaan ini akan memberikan kiraan pengguna dan lawatan yang berbeza untuk setiap tapak yang dilawati semalam.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengira Lawatan Tapak dan Pengguna yang Berbeza dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!