我正在收集網站訪問者的某些操作。當我錄製動作時,我會存儲他們正在使用的用戶ID和瀏覽器。如何使用另一個唯一列獲取列數?
我想要統計每個瀏覽器的使用次數,但是如果有來自同一用戶的操作,它會每次收集同一個瀏覽器,所以當它爲每個瀏覽器計數時,我希望它僅爲每個用戶計數一次瀏覽器。
這是我的嘗試:
SELECT DISTINCT(user), browser, count(browser) AS browser_count
FROM tracking
GROUP BY user, browser
這是它返回:
user|browser|browser_count
--------------------------
20 |Chrome | 5
156 |Chrome | 127
156 |Firefox| 2
156 |IE | 2
156 |Safari | 2
160 |Chrome | 269
160 |Firefox| 8
160 |IE | 4
160 |Opera | 6
160 |Safari | 4
結果顯示,Chrome的用戶20,由用戶156記錄的5倍127倍,269而是用戶160次。相反,我需要的是Chrome使用的總次數,但僅爲每位用戶記錄一次,這將使其僅由獨特用戶總共使用3次。
這就是我想返回:
browser|browser_count
---------------------
Chrome | 3
Firefox| 2
IE | 2
Safari | 2
Opera | 1