Đếm số lượng không trùng lặp theo ngày

ID User_Id amount date
1 1 1000 2019-11-22 16:30:30
2 1 1000 2019-11-22 16:30:30
3 1 1000 2019-11-22 16:30:30
4 3 1000 2019-11-22 16:30:30
5 1 2000 2019-11-23 07:00:00
6 1 200 2019-11-23 08:00:00

Bây giờ e muốn đếm số lượng theo ngày và loại bỏ các giá trị trùng lặp thì phải làm như nào ạ? Hiện tại e đang dùng Laravel
Ví dụ như bảng trên thì e count(user_id) theo ngày 22 sẽ ra 2 (chỉ đếm user_id 1 đúng 1 lần và user 3 1 lần) thay vì ra 4 (đếm user_id = 1 3 lần và user_id = 3 1 lần).

Chắc là distinct thôi.

3 Likes

dùng câu lệnh sql hay sao bạn.

viết câu query trong laravel ấy ạ

em đã dùng group_by để nhóm theo từng ngày rồi (ngày 22 và ngày 23). Nhưng không biết làm sao để count(user_id) loại bỏ được giá trị trùng lặp (ở ví dụ trên là chỉ đếm user_id = 1 có 1 lần)

SELECT Count(*)
FROM TABLE_NAME
WHERE date = '2019-11-22 16:30:30'
GROUP BY User_id, date
2 Likes

có loại bỏ được giá trị trùng lặp đâu bác. mỗi giá trị nó vẫn đếm 1 lần

SELECT Count(User_id)
FROM TABLE_NAME
WHERE date = '2019-11-22 16:30:30'
GROUP BY User_id, date

thử xem

2 Likes

cũng ko được bác nhé

bác phải đưa kiểu dữ liệu từng column thì mới viết query đúng được

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?