假设有一个Table person(ID,....., n_success,n_fails)
喜欢
ID n_success n_fails
a1 10 20
a2 15 10
a3 10 1
我想进行一个查询,返回具有最大 n_success/(n_success+n_fails) 的人的 ID。
在这种情况下,我想要获得的输出示例是:
a3 0.9090909091
我试过:
select ID,(N_succes/(n_success + n_fails)) 'rate' from person
通过这个查询,我得到了每个 ID 及其相对成功率
select ID,MAX(N_succes/(n_success + n_fails)) 'rate' from person
此查询只有 1 行正确率但 ID 不正确
我该怎么办?
最佳答案
微软 SQL
SELECT TOP 1 ID, (`n_success` / (`n_success` + `n_fails`)) AS 'Rate' FROM persona
ORDER BY (n_success / (n_success + n_fails)) DESC
MySQL
SELECT `ID`, (`n_success` / (`n_success` + `n_fails`)) AS 'Rate' FROM `persona`
ORDER BY (`n_success` / (`n_success` + `n_fails`)) DESC
LIMIT 1
关于mysql - 用他的相对 ID 在表中找到最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16764044/