假设我有2张桌子。 table1:运行table2:用户 run_id int用户名nchar(255) test_id int隶属枚举('a','b') 用户名nchar(255)first_name nchar(255) 日期datetime last_name nchar(255)
表运行中的用户名是表用户的外键。
问题:编写一个查询,以显示在2016年1月1日之前,每个用户使用“ a”隶属关系运行了多少个独特的测试,以及运行了多少次。从运行最多数量的唯一测试的用户开始,订购结果。
请帮助,明天将上传我的部分答案。谢谢
这是我的更新: 1:表runs.test_id是唯一的 2:我的答案
select count(test_id), test_id, mydb.users.username
from mydb.runs, mydb.users
where mydb.runs.username = mydb.users.username and
mydb.users.affiliation='a'
group by test_id, username
order by count(test_id) desc
我无法通过在test_id前面添加与众不同的方式来显示唯一的测试。有什么想法吗?谢谢
答案 0 :(得分:0)
SELECT a.test_id, a.date, b.username FROM runs a, users b WHERE a.username = b.username AND a.date < '2016-1-1'