pgarray对应mysql_MYSQL数组聚合函数,例如
PostgreSQLarray_agg
我在MySQL上有两个表,我想知道在MySQL上是否有任何聚合函数,如postgreSQL的array_agg()。
表1的属性只有8条记录表2的记录捕获了该属性,因此对于同⼀属性,有时可以是1或n次,我得到了这个Qry:
SELECT p.id, pcb.users_admin_id as uid
FROM properties p
INNER JOIN prop_captured_by pcb ON p.id = pcb.property_id
-- GROUP BY p.id
平台小程序id uid
200 1
mysql菜鸟教程聚合函数200 80
202 1
202 80
211 1
211 10
211 81
215 10 ...
如果我使⽤GROUP BY部分,则会得到以下信息:异度之刃3着器
id uid
200 1
202 1
211 1
215 10 ...
丢失了除users_admin_id的第⼀个值以外的任何其他数据。我知道我可以通过postgreSQL的array_agg()函数实现所需的结果,但是我不知道如何在MYSQL上做到这⼀点。
这是我的愿望结果:
id uid
200 1,80 //an array, I don't mind about the separator, could be anything.
202 1,80
bigdecimal舍去小数位211 1,10,81
215 10 ...
我尝试了UNION,GROUP BY,INNER JOIN …没有运⽓…有任何指针吗?
python代码画小黄人更新
我正在使⽤这个⼈的多对多关系。希望对其他⼈有⽤。我需要从第三个表中添加⽤户名,因此最终查询如下所⽰:
SELECT p.id, group_concat(pcb.users_admin_id) as uid, group_concat(ua.name) as uin FROM properties p
INNER JOIN prop_captured_by pcb ON p.id = pcb.property_id
shell异常处理tryINNER JOIN users_admin ua ON ua.id = pcb.users_admin_id
group by p.id;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论