我可以在mysql中使用聚合函数(LAST)吗? 如果是,那么为什么给我以下查询::
的错误SELECT `user_id`,last(`value`)
FROM `My_TABLE`
group by `user_id`
错误 ::您的SQL语法出错;检查与您的MySQL服务器版本相对应的手册,以便在第1行value
'附近的'{My_TABLE
)FROM user_id
组附近使用正确的语法
编辑 ::我的答案“最后”未在MySql中使用。然后如何在MySql中执行它?
答案 0 :(得分:5)
不,mysql中没有任何名为LAST的内容
列表修改强>
你可以执行类似这样的事情
select f.user_id, f.value
from (
select MAX(value) as maxval
from my_table group by user_id
) as x inner join my_table as f on f.value = x.maxval
答案 1 :(得分:2)
MySQL中没有定义“last”函数。你只是想获得最后(最新)的记录吗?
如果是这样的话:
SELECT `user_id`, `value`
FROM `My_TABLE`
ORDER BY `user_id` DESC
LIMIT 1;
或
SELECT `user_id`, `value`
FROM `My_TABLE`
WHERE `user_id` = (SELECT MAX(`user_id`));
答案 2 :(得分:1)
像这样 -
SELECT * FROM table1 t1
JOIN (SELECT depno, MAX(id) max_id FROM table1 GROUP BY depno) t2
ON t1.depno = t2.depno AND t1.id = t2.max_id
答案 3 :(得分:0)
因为在mysql中没有名为last()的函数。
尝试在mysql中使用group by order by子句
答案 4 :(得分:0)
我找到的最好的处理方法:
SELECT user_id, json_unquote(json_extract(json_objectagg('value', value), '$.value'))
FROM my_table
GROUP BY user_id