Rya*_*yan 2 sql sql-server-2008
我有一个包含用户的表...某种方式的用户被加倍(有多个记录).我希望通过电子邮件地址清楚地提取每个用户记录,对于拥有多个记录的用户,我只想提取登录次数最多的记录.
--USERS----------------------------
ID EMAIL TOTAL_LOGINS
1 blah@blah.com 3
2 blah@blah.com 1
3 bloop@blah.com 1
4 bloop@blah.com 45
5 blarp@blah.com 6
6 flag@blah.com 2
Run Code Online (Sandbox Code Playgroud)
我希望查询返回的是:
ID EMAIL TOTAL_LOGINS
1 blah@blah.com 3
4 bloop@blah.com 45
5 blarp@blah.com 6
6 flag@blah.com 2
Run Code Online (Sandbox Code Playgroud)
有人可以帮我解决这个问题吗?
谢谢!
SELECT EMAIL, MAX(TOTAL_LOGINS)
FROM USERS
GROUP BY EMAIL
Run Code Online (Sandbox Code Playgroud)
编辑:
这将在MS SQL中执行您想要的操作.
SELECT * -- Bad practice. I'm just showing that you can select anything.
FROM USERS
WHERE ID = (SELECT TOP 1 ID
FROM USERS u
WHERE u.EMAIL = USERS.EMAIL
ORDER BY TOTAL_LOGINS DESC)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
102 次 |
| 最近记录: |