【发布时间】:2015-02-28 06:56:58
【问题描述】:
我有 2 个字段,其中包含这样的随机值列表,其中列表用空格分隔
field1,field2
2 4 8 4,A B C B
字段中的值和计数是随机的(A 并不总是在字段 2 的索引 1 中,所以它可以是
field1,field2
2 8,B A
唯一一致的是 A B C。 我需要的是总结值并创建列 到目前为止我有这个
SELECT
CAST (N'<H><r>' + REPLACE([field1], ' ', '</r><r>') + '</r></H>' AS XML) AS [vals],
CAST (N'<H><r>' + REPLACE([field], ' ', '</r><r>') + '</r></H>' AS XML) AS [cols]
FROM tt
由于某种原因,我不能使用这样的变量
DECLARE @A
Select
CASE WHEN
[cols].value('count(/H/r)[1]','VARCHAR(100)') = 'A' THEN @A = @A + [vals].value('count(/H/r)[1]','VARCHAR(100)') END
from .....
我迷路了,我什至无法为变量赋值并在 TSQL 中返回数据 我在 SELECT 语句中尝试了 WHILE 循环,但没有运气
对此表示赞赏的任何帮助
【问题讨论】:
-
寻找这个:
DECLARE @A INT = (SELECT CASE WHEN 1=2 THEN 3 ELSE 4 END);
标签: sql-server xml tsql iterator