字符串计算

rgh_good 2010-08-06 12:29:36
Table数据
字段A 字段B 字段C
-----------------------------
A A_A 1
A A_A 2
A A_B 1
B B_A 1
B B_A 2
B B_A 3
B B_B 1
B B_B 2
B B_C 3

输出结果
字段A 字段B 字段C
------------------------------
A A_A 1_2
A A_B 1
B B_A 1_2_3
B B_B 1_2
B B_C 3

在SQL Server 2000 里 不使用循环,不使用函数,T-SQL怎么写???
...全文
69 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hokor 2010-08-06
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 feixianxxx 的回复:]
SQL code
临时表可以挖?
--3.3.3 使用临时表实现字符串合并处理的示例
--处理的数据
CREATE TABLE tb(col1 varchar(10),col2 int)
INSERT tb SELECT 'a',1
UNION ALL SELECT 'a',2
UNION ALL SELECT 'b',1
UNION ALL SELECT 'b',2
UNION……
[/Quote]
在SQL Server 2000 里 不使用循环,不使用函数,不使用T-SQL,不使用临时表,怎么写,???
feixianxxx 2010-08-06
  • 打赏
  • 举报
回复
效率不高 ~·~
feixianxxx 2010-08-06
  • 打赏
  • 举报
回复
临时表可以挖?
--3.3.3 使用临时表实现字符串合并处理的示例
--处理的数据
CREATE TABLE tb(col1 varchar(10),col2 int)
INSERT tb SELECT 'a',1
UNION ALL SELECT 'a',2
UNION ALL SELECT 'b',1
UNION ALL SELECT 'b',2
UNION ALL SELECT 'b',3

--合并处理
SELECT col1,col2=CAST(col2 as varchar(100))
INTO #t FROM tb
ORDER BY col1,col2
DECLARE @col1 varchar(10),@col2 varchar(100)
UPDATE #t SET
@col2=CASE WHEN @col1=col1 THEN @col2+','+col2 ELSE col2 END,
@col1=col1,
col2=@col2
SELECT * FROM #t
/*--更新处理后的临时表
col1 col2
---------- -------------
a 1
a 1,2
b 1
b 1,2
b 1,2,3
--*/
--得到最终结果
SELECT col1,col2=MAX(col2) FROM #t GROUP BY col1
/*--结果
col1 col2
---------- -----------
a 1,2
b 1,2,3
--*/
hao1hao2hao3 2010-08-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 hokor 的回复:]
在SQL Server 2000 里 不使用循环,不使用函数,不使用T-SQL怎么写???
[/Quote]

支持!用特异功能,用意念催动它,让结果直接出来。
hokor 2010-08-06
  • 打赏
  • 举报
回复
在SQL Server 2000 里 不使用循环,不使用函数,不使用T-SQL怎么写???
rgh_good 2010-08-06
  • 打赏
  • 举报
回复
DECLARE @colA varchar(10),@ColB varchar(10),@col2 varchar(100)
Select A,B,C into #t2 From t1
Update #t2 Set @Col2 = Case When A= @colA and B= @ColB Then @Col2 + ',' + C Else C end , @colA = A,@ColB = B,C= @Col2
Select A,B,max(C)
From #t2
Group by A,B
Drop Table #t2

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧