Select max() 每个值的 mariaDB
Select max() of every value mariaDB
我有一个 table 看起来像这样:
name price class
a 10 x
a 20 y
a 15 z
b 40 y
b 35 z
c 5 x
c 10 y
c 15 z
c 12 w
我想为每个名称获取价格最高且属于 class 的名称。像这样:
name price class
a 20 y
b 40 y
c 15 z
我试过这个:
SELECT name, max(price), class
from t
GROUP by name
但它给我带来了错误 class。我明白了:
name price class
a 20 x
b 40 y
c 15 x
你能告诉我我做错了什么吗?
这应该能满足您的需求:
SELECT T.*
FROM T
INNER JOIN (SELECT Name,
MAX(price) maxPrice
FROM t
GROUP BY Name) tMax on T.Name = tMax.Name
AND T.Price = tMax.maxPrice
我有一个 table 看起来像这样:
name price class
a 10 x
a 20 y
a 15 z
b 40 y
b 35 z
c 5 x
c 10 y
c 15 z
c 12 w
我想为每个名称获取价格最高且属于 class 的名称。像这样:
name price class
a 20 y
b 40 y
c 15 z
我试过这个:
SELECT name, max(price), class
from t
GROUP by name
但它给我带来了错误 class。我明白了:
name price class
a 20 x
b 40 y
c 15 x
你能告诉我我做错了什么吗?
这应该能满足您的需求:
SELECT T.*
FROM T
INNER JOIN (SELECT Name,
MAX(price) maxPrice
FROM t
GROUP BY Name) tMax on T.Name = tMax.Name
AND T.Price = tMax.maxPrice