【发布时间】:2018-02-13 07:32:01
【问题描述】:
在 postgresql 中,它可以在一列中返回值,例如 - 逗号分隔列表,其中包括来自一个子选择的返回值 这在处理大量数据并试图避免多个子查询的情况下非常有用
SELECT a.key, a.transaction_id,
array_to_string(array(SELECT cast(lo.issue as text) FROM keys.key_list lo
WHERE version_id = 2 AND lo.issue >= '2017-01-01'
AND lo.key=a.key),\', \') as issue_dates
FROM public.orders a
WHERE a.type IN (2, 4)
在这种情况下,它会返回类似的数据
key | transaction_id | issue_dates
aaa1 | 234234234 | 2017-01-01, 2017-06-05, 2018-01-02
是否可以在 MySQL 中做类似的事情?
【问题讨论】:
-
您可以使用 group_concat 但我更喜欢在应用程序代码中进行这种操作
标签: mysql postgresql