ホームページ >データベース >mysql チュートリアル >MySQL でサイトごとにユニークな Web サイト訪問者を効率的にカウントするにはどうすればよいですか?
MySQL データからのユニーク訪問者数の決定
MySQL を使用して昨日の Web サイトへのユニーク訪問者数をカウントするには、最初に次のようなクエリを検討します。ユーザーとタイムスタンプによるグループ:
SELECT DISTINCT `user_id` AS user, `site_id` AS site, `ts` AS time FROM `cp_visits` WHERE ts >= DATE_SUB(NOW(), INTERVAL 1 DAY)
ただし、この区別のみに依存すると、同じ site_id 値を持つ複数の結果が得られます。これを解決するには、site_id ごとに結果を集計し、各サイトのユニーク ユーザーと訪問数をカウントする必要があります。
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
このクエリでは、ユニーク ユーザー数 (countUsers) と合計訪問数が得られます。一意の site_id ごとに (countVisits)。結果を site_id でグループ化することで、異なるサイトのログインのみがカウントされるようになり、同じサイトに対して複数の結果が表示されることを回避できます。
以上がMySQL でサイトごとにユニークな Web サイト訪問者を効率的にカウントするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。