Mar*_*llo 0 mysql sum distinct
我在使用messages上的distinct时对SUM字节列有问题.根据示例表,我需要得到以下结果:
user1 10(我需要使用substring_index从用户中删除域)
user2 10
但在我的所有测试中,user1 @ test.net的字节数正在相加
user1 20
user2 10
username messageid bytes
user1@test.net FD5414C0828B0C498DD655CDA90FFCA83D2D088D67@test.net 10
user1@test.net FD5414C0828B0C498DD655CDA90FFCA83D2D088D67@test.net 10
user2@test.net XX5414C0828B0C498DD655CDA90FFCA83D2D088D77@test2.net 5
user2@test.net YY5414C0828B0C498DD655CDA90FFCA83D2D088D77@test2.net 5
Run Code Online (Sandbox Code Playgroud)
任何的想法?
在此先感谢您的时间和帮助.
干杯,
马塞洛
您的数据有重复记录,您需要删除它们.您可以使用下面的查询 - 它有一个内部选择,可以删除重复项,然后根据用户总结所有字节.
我没有进入子字符串问题,因为我认为你已经处理过了(如果你想让我添加它,请评论...)
SELECT
t.username, SUM(t.bytes)
FROM
( SELECT username, messageid, bytes
FROM my_table
GROUP BY username, messageid) as t
GROUP BY t.username
Run Code Online (Sandbox Code Playgroud)