如何从 table 中的两列中获取最大值 (SQL)
How to get highest values from two columns in a table (SQL)
所以我有一个 table,它有 n 行,如下所示:
.ID.|.Cycle.|.Week.|..Date...|.Type.
.1..|...1...|..1...|.12-12-12|.a.
.2..|...1...|..2...|.12-12-12|.a.
.3..|...1...|..3...|.12-12-12|.a.
.4..|...1...|..4...|.12-12-12|.a.
.5..|...2...|..1...|.12-12-12|.a.
.6..|...2...|..2...|.12-12-12|.a.
.7..|...2...|..2...|.12-12-12|.some_value.
所以在这里我想找回周期 2,类型为 "some_value" 的第 2 周,因为周期 2 是 table 中最大的周期数,而第 2 周是最大的周数在周期 2.
现在我使用查询
SELECT cycle=MAX(cycle),week=MAX(week)
FROM table
WHERE TYPE=some_value
但我觉得这不对,因为我似乎没有得到正确的值。感谢任何帮助。
您要这样做吗?
select cycle, week
from table
where type = somevalue
order by cycle desc
limit 1;
您的查询正在分别返回周期和周的最大值。
我想这就是你想要达到的目标。
SELECT week,
cycle
FROM table
WHERE cycle = (SELECT Max(cycle)
FROM table
WHERE TYPE = some_value)
AND TYPE = some_value
ORDER BY week DESC
limit 1
所以我有一个 table,它有 n 行,如下所示:
.ID.|.Cycle.|.Week.|..Date...|.Type.
.1..|...1...|..1...|.12-12-12|.a.
.2..|...1...|..2...|.12-12-12|.a.
.3..|...1...|..3...|.12-12-12|.a.
.4..|...1...|..4...|.12-12-12|.a.
.5..|...2...|..1...|.12-12-12|.a.
.6..|...2...|..2...|.12-12-12|.a.
.7..|...2...|..2...|.12-12-12|.some_value.
所以在这里我想找回周期 2,类型为 "some_value" 的第 2 周,因为周期 2 是 table 中最大的周期数,而第 2 周是最大的周数在周期 2.
现在我使用查询
SELECT cycle=MAX(cycle),week=MAX(week)
FROM table
WHERE TYPE=some_value
但我觉得这不对,因为我似乎没有得到正确的值。感谢任何帮助。
您要这样做吗?
select cycle, week
from table
where type = somevalue
order by cycle desc
limit 1;
您的查询正在分别返回周期和周的最大值。
我想这就是你想要达到的目标。
SELECT week,
cycle
FROM table
WHERE cycle = (SELECT Max(cycle)
FROM table
WHERE TYPE = some_value)
AND TYPE = some_value
ORDER BY week DESC
limit 1