我有一张像这样形成的桌子
SELECT * FROM test
最大的地方(数字,初始)
| id | username | number | initial |
我需要添加顶部数字和首字母来检索顶部。
以此为例
| id | username | number | initial | total
| 1 | a | 665 | 441 | 1106
| 2 | b | 918 | 99 | 1017
| 3 | c | 611 | 336 | 947
| 4 | d | 491 | 968 | 1459
| 5 | e | 414 | 129 | 543
我需要的是先检索最高编号和最后编号。
我已经尝试SELECT * FROM
测试WHERE GREATEST(number, initial)
,但这似乎没有做到这一点。
我对SQL没有那么有经验,但我尝试过的一件事是
答案 0 :(得分:1)
如果您想获得数字+初始值最高的记录:
select * from test
order by (number + initial) desc
limit 1
或者,如果您想要所有具有最大值数字+初始值的记录:
select * from test
where test.number + test.initial =
(select max(test.number + test.initial)
from test)
或者,如果您想按照数字+ initial的值按降序排序所有记录:
select * from test
order by (number + initial) desc