首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何根据特定列SQL的唯一值混合三行?

如何根据特定列SQL的唯一值混合三行?
EN

Stack Overflow用户
提问于 2017-01-25 17:42:51
回答 1查看 83关注 0票数 0

我想在Oracle developer中编写一个sql查询,将三行转换为一行,并组合这些行的值。

这张表有三列。column1 : NUMBER(10,0) column2 : VARCHAR2(15 CHAR) column3 :时间戳(6)

我将column2和column3合并到一个列中。一开始我有:

我想根据column1 ( 41)的值组合这三行。我想在最后划一排:

你能帮我找到正确的查询吗?

编辑oracle-sqldeveloper标记是相关的,因为在编写了正确的查询之后,仍然存在在see的查询结果窗口中能够看到它是否“正确”的问题。这是个小问题,因为删除了空白,因此不清楚结果是否正确。在评论和答案中讨论了这一点。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-25 17:56:20

代码语言:javascript
复制
select column1,
       listagg(column2 || ' ' || to_char(column3, 'dd-MON-rr hh:mi:ss.ff6 AM'), chr(10)) 
               within group (order by column3)
from   table_name
group by column1
;

(未经测试)

这将显示文本列是单个表行,但它将显示为三行文本。

您还可能希望为第二列提供别名。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41858150

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档