我想用每行中另一列的最大值创建一个新列,但是当我使用 MAX()
函数只返回一行。
我希望每行的值相同。从第一个代码开始 MAX
函数我得到533行,然后当我使用 MAX()
我只有一排。
SELECT
ap.id,
ap.name,
apc.closing_prob_c
FROM a_assigned_prospect ap
LEFT JOIN a_assigned_prospect_cstm apc ON apc.id_c=ap.id
SELECT
ap.id,
ap.name,
apc.closing_prob_c,
MAX(apc.closing_prob_c)
FROM a_assigned_prospect ap
LEFT JOIN a_assigned_prospect_cstm apc ON apc.id_c=ap.id
1条答案
按热度按时间esbemjvw1#
我知道您希望新列的最大值为
apc.closing_prob_c
在整个结果集中,同时仍返回原来的533行。如果您运行的是mysql 8.0,那么直接使用window max:
在早期版本中,通常使用子查询: