我有以下表(tablea):
x y
---------------------------
3 1
1 4
1 3
Run Code Online (Sandbox Code Playgroud)
结果我想要x = 1和y = 3(尽可能低x是最高优先级,让y尽可能低是优先级较低).所以我想要一个类似的SQL语句:
Select Min(y), x
FROM (SELECT MIN(x), y FROM tablea);
Run Code Online (Sandbox Code Playgroud)
但这给了我以下错误代码:
错误代码:1248.每个派生表必须有自己的别名
如果我尝试:
Select Min(y), x
FROM (SELECT MIN(x), y FROM tablea) as a;
Run Code Online (Sandbox Code Playgroud)
我明白了:
错误代码:1054."字段列表"中的未知列'x'
To avoid error unknown column you need to add allias to MIN(x):
Select Min(a.y), a.x
FROM (SELECT MIN(x) AS x, y FROM tablea) as a;
Run Code Online (Sandbox Code Playgroud)
But to get results as you proposed I would rewrite your query as:
Select x, MIN(y) AS y
FROM tablea
WHERE x = (SELECT MIN(x) FROM tablea);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
275 次 |
| 最近记录: |