是否可以构造SQL来连接多行的列值?
以下是一个例子:
表A.
PID A B C
表B.
PID SEQ Desc A 1 Have A 2 a nice A 3 day. B 1 Nice Work. C 1 Yes C 2 we can C 3 do C 4 this work!
SQL的输出应该是 -
PID Desc A Have a nice day. B Nice Work. C Yes we can do this work!
所以输出表的Desc列基本上是表B的SEQ值的串联?
有没有SQL的帮助?
我的投入是这样的.
col1 col2
1 a
1 b
2 c
2 d
2 e
Run Code Online (Sandbox Code Playgroud)
O/p:应该是这样的
col1 col2
1 a,b
2 c,d,e
Run Code Online (Sandbox Code Playgroud)
我想要一个可以在DB级别触发的查询.我尝试了各种各样的方法,但未能做到这一点......
我正在寻找LINQ等效于Sybase的LIST()或MySQL的group_concat()
它会转换:
User Hobby
--------------
Bob Football
Bob Golf
Bob Tennis
Sue Sleeping
Sue Drinking
Run Code Online (Sandbox Code Playgroud)
至:
User Hobby
--------------
Bob Football, Golf, Tennis
Sue Sleeping, Drinking
Run Code Online (Sandbox Code Playgroud) 我正在尝试将单列VARCHAR圆形查询转换为命令分隔的值列表.
这与此问题完全相同,但对于Oracle而不是SQL Server或MySQL.
我们有一个表格形式:
ID,Value1,Value2,Value3
1,2,3,4
Run Code Online (Sandbox Code Playgroud)
我们需要将其转化为.
ID,Name,Value
1,'Value1',2
1,'Value2',3
1,'Value3',4
Run Code Online (Sandbox Code Playgroud)
在一个SELECT语句中是否有一种聪明的方法(即没有UNION)?列名称Value1,Value2和Value3是固定且常量的.
该数据库是oracle 9i.
我需要一个报告,我应该使用数据透视表.Report将按类别分组.使用case语句是不好的,因为有很多种类.我可以认为Northwind数据库作为样本,所有类别将显示为列和报告将显示客户在Categories之间的偏好.我不知道另一个解决方案,并在Sql Server的互联网上看到了存储过程的例子.你知道一个解决方案,除了使用案例时?
谢谢
嗨我在oracle或某些功能中寻找与mysql相同的group_concat功能
我正在尝试为新表准备数据,该表与现有表中的数据相同但是非规范化.我有一个简单的场景,但我的想法是以最有效的方式返回结果
它基于以下简化方案:
Table X | Table y
id | id Identifier Value
123 | 123 1 A
| 123 2 B
Run Code Online (Sandbox Code Playgroud)
与表XI中的其他字段一起需要我的查询返回:
123 A B
Run Code Online (Sandbox Code Playgroud)
我考虑过:
解决方案一
select
id,
(select Value...),
(select Value...)...
Run Code Online (Sandbox Code Playgroud)
解决方案二:
select id,
y1.Value,
y2.Value
from x, y y1, y y2...
Run Code Online (Sandbox Code Playgroud)
解决方案三:使用PL/SQL并迭代游标
解决方案四:将y提取到两个表identifyyer1和identifier2(可能使用触发器)并在查询中连接这些表
由于这个或那个原因,这些解决方案中的每一个都有一个主要的缺点,我确信一个词可以让我想起一个解决这个问题的概念