將多行數(shù)據(jù)合并為一行 Sqlfunction多行中的列合并為一行一列的方法?
Sqlfunction多行中的列合并為一行一列的方法?使用 for xml 示例:select TalkingResourceInfo_ID, ReplyMessage = stuff(
Sqlfunction多行中的列合并為一行一列的方法?
使用 for xml 示例:select TalkingResourceInfo_ID, ReplyMessage = stuff( ( select "|" ReplyMessage from TalkingReplyInfo t where TalkingResourceInfo_ID = TalkingReplyInfo.TalkingResourceInfo_ID for xml path("") ), 1, 1, "" ) from dbo.TalkingReplyInfo group by TalkingResourceInfo_ID
sql多列合并為一列多行?
CREATE TABLE #t (
id int,
a char(2),
b char(2),
c char(2),
d char(2)
)
go
INSERT INTO #t
SELECT 1, "a1", "b1", "c1", "d1" UNION ALL
SELECT 2, "a2", "b2", "c2", "d2" UNION ALL
SELECT 3, "a3", "b3", "c3", "d3"
GO
1> SELECT
2> CASE
3> WHEN ROW_NUMBER() OVER(partition by id order by [all]) = 1 THEN cast(id as varchar(2))
4> ELSE "" END AS id,
5> [all]
6> FROM
7> (
8> SELECT id, a AS [all] FROM #t
9> UNION ALL
10> SELECT id, b AS [all] FROM #t
11> UNION ALL
12> SELECT id, c AS [all] FROM #t
13> UNION ALL
14> SELECT id, d AS [all] FROM #t
15> ) t
16> GO
id all
-- ---
1 a1
b1
c1
d1
2 a2
b2
c2
d2
3 a3
b3
c3
d3
(12 行受影響)
SQL多行合并為一行,SQL語(yǔ)句如何寫(xiě)?
用多個(gè)字段分組就行,SQL如下SELECT A,B,C,SUM(D) FROM TABLE GROUP BY C,A,B