如果列具有多个最大值,SQL max()仅返回1行

Blu*_*int 1 mysql sql max

这似乎是一个愚蠢的问题,因为它应该有一个简单的答案,但我只是找不到。我有一张桌子,看起来像这样:

|-----|---|
|  a  | b |
|-----|---|
| ALA | 2 |
| ASP | 1 |
| SER | 1 |
| VAL | 2 |
|-----|---|
Run Code Online (Sandbox Code Playgroud)

我需要的是使两行具有最大值(我事先不知道这些值),这意味着我上面的示例应该给出:

|-----|--------|
|  a  | max(b) |
|-----|--------|
| ALA |   2    |
| VAL |   2    |
|-----|--------|
Run Code Online (Sandbox Code Playgroud)

我尝试着

SELECT a, max(b) FROM table;
Run Code Online (Sandbox Code Playgroud)

但它只给出第一最大行:

|-----|--------|
|  a  | max(b) |
|-----|--------|
| ALA |   2    |
|-----|--------|
Run Code Online (Sandbox Code Playgroud)

我想念什么?

Pav*_*nar 7

SELECT a,b FROM table
WHERE b = (SELECT MAX(b) FROM table)
Run Code Online (Sandbox Code Playgroud)