假设我的表看起来像这样:
1. user 1.2.3.4
2. user 1.2.3.4
3. user 2.3.4.5
4. user 2.3.4.5
5. user 1.2.3.5
6. anotheruser 1.2.3.6
7. anotheruser 1.2.3.4
我想获得所有带用户名的ips列表。查询可能如下所示:
select username, ip from client_logs where ip is unique
我想要这样的输出:
user 1.2.3.4
user 2.3.4.5
user 1.2.3.5
anotheruser 1.2.3.6
anotheruser 1.2.3.4
我已经尝试通过select distinct来做到这一点,但我只有ips或ip-user。我试过的查询是:
SELECT DISTINCT ip, username
FROM client_logs
ORDER BY username
答案 0 :(得分:3)
USE GROUP BY
SELECT username, ip
FROM client_logs
GROUP BY username, ip
ORDER BY username, ip
修改强>
我也尝试了你的第一个解决方案并且正常工作
SELECT distinct username, ip
FROM client_logs
ORDER BY username, ip
答案 1 :(得分:-2)
我通过以下查询解决了这个问题:
SELECT username, ip
FROM client_logs
GROUP BY ip
ORDER BY username, ip