Rumah >pangkalan data >tutorial mysql >Bagaimana Mengira Log Masuk Tapak Berbeza dengan Tepat dalam MySQL dalam masa 24 Jam?

Bagaimana Mengira Log Masuk Tapak Berbeza dengan Tepat dalam MySQL dalam masa 24 Jam?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-01 04:26:17294semak imbas

How to Accurately Count Distinct Site Logins in MySQL within 24 Hours?

Menentukan Kiraan Log Masuk Berbeza dalam MySQL

Dalam bidang pengurusan pangkalan data, selalunya perlu untuk membezakan kejadian unik data dalam sesuatu jangka masa. Untuk menangani keperluan ini dalam MySQL, fungsi COUNT DISTINCT terbukti tidak ternilai, membolehkan kami menentukan bilangan nilai berbeza dalam set data yang ditentukan.

Senario baru-baru ini membentangkan cabaran mengira lawatan berbeza ke tapak tertentu dalam 24 jam lepas. Pertanyaan yang pada mulanya digunakan, semasa muncul bunyi, menghasilkan hasil yang salah dengan ID tapak pendua. Percanggahan ini menimbulkan persoalan: bagaimana untuk mengasingkan dan mengira hanya log masuk tapak yang berbeza?

Penyelesaian, ternyata, terletak pada penggunaan fungsi COUNT DISTINCT bersama-sama dengan klausa GROUP BY. Dengan mengasingkan medan site_id, kami memastikan bahawa hanya nilai unik yang dipertimbangkan dalam pengiraan. Pertanyaan yang disemak berbunyi seperti berikut:

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

Dengan pendekatan yang diubah suai ini, pertanyaan kini melaporkan dengan tepat log masuk tapak yang berbeza dan kiraan lawatan masing-masing, memberikan cerapan yang diingini tentang aktiviti pengguna di tapak yang dipersoalkan.

Atas ialah kandungan terperinci Bagaimana Mengira Log Masuk Tapak Berbeza dengan Tepat dalam MySQL dalam masa 24 Jam?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn