【问题标题】:How to sort concat_ws(',',collect_list(a)) in MySQL?如何在 MySQL 中对 concat_ws(',',collect_list(a)) 进行排序?
【发布时间】:2021-09-28 10:11:37
【问题描述】:

我有一个包含 2 列时间和文本的表格,我想在其中按时间顺序连接文本。

我presto sql,我可以做ARRAY_AGG(text ORDER BY time),我在MySQL中怎么做? 我发现CONCAT_WS(',', COLLECT_LIST(text)) 可以做部分工作,但不知道如何快速按时间订购。

谢谢。

【问题讨论】:

  • 这里的错误,我希望查询在 SparkSQL 中执行

标签: sql apache-spark-sql concatenation aggregate-functions


【解决方案1】:

你会使用:

GROUP_CONCAT(test ORDER BY time)

注意:这会产生一个逗号分隔的字符串,而不是一个数组。

【讨论】:

  • 我可以再问一个问题,我试过了,但我收到了这个错误'org.apache.spark.sql.catalyst.parser.ParseException: mismatched input 'ORDER' Expecting {')' , ','}(第 3 行,位置 41)'。我正在使用 SparkSQL,我的代码是 SELECT GROUP_CONCAT(text ORDER BY time ASC) as lst from ...
  • @duoduolikes 。 . .您的问题是:“我怎样才能在 MySQL 中做到这一点?”。这回答了你的问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-06-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-02-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多