【问题标题】:Multiple columns in a single listagg单个 listagg 中的多个列
【发布时间】:2018-05-07 22:24:53
【问题描述】:

是否可以在单个 listagg 函数中添加多个列? 我有一个查询返回您可以在下面的屏幕截图中看到的结果。第一个黄色突出显示的结果是我现在所拥有的。我想要第二个黄色突出显示的结果。

【问题讨论】:

  • 这不是listAgg,它是一个简单的串联。你用的是 Sql Server 还是 oracle?
  • 检查我的答案,让我知道它有帮助。另请阅读:stackoverflow.com/help/someone-answers

标签: sql sql-server database oracle


【解决方案1】:

你不需要LISTAGG,你只需要连接字符串:

Oracle 查询

SELECT contractorno,
       fruits || stock_type || stockno AS stockinfo
FROM   (
  SELECT contractorno,
         fruits,
         stock_type,
         stockno
  FROM   your_query
)

在 SQL Server 中,字符串连接运算符是 +,而不是 Oracle 的 ||

【讨论】:

    【解决方案2】:

    甲骨文

    SELECT contractorno
        ,fruits || '-' || stock_type || '-' || stockno AS stockinfo
    FROM (
    --your query--
        )q
    

    SQL-服务器

    SELECT contractorno, 
           Concat (fruits, '-', stock_type, '-', stockno) AS stockinfo 
    FROM   (--yourquery--
        ) q 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-29
      • 1970-01-01
      • 2021-09-07
      • 2021-12-11
      • 2022-01-18
      相关资源
      最近更新 更多