两个拆分字符串合并为一个 table 变量

Two Split String Merging into one table variable

我有两个字符串变量,其值类似于

@id = '1#2#3#4#5'
@fid = '11#12#13#14#15'

在存储过程中,我使用 table 带有拆分字符串的变量来为两个变量

创建 table
Select Value from STRING_SPLIT(@id,'#')
Select Value from STRING_SPLIT(@fid,'#')

这给了我两个单独的 table 与 @id 和 @fid data.but 我需要将数据合并为一个 table。我需要输出看起来像

fid|id

11 |1
12 |2
13 |3
14 |4
15 |5

我该怎么做?

但如果我喜欢这样 select a.value,b.Value FROM STRING_SPLIT(@fid,'#') a,STRING_SPLIT(@id,'#') b

我得到 25 行而不是 5.each @id 的值将与 @fid 的每个值关联,我不想要这种类型的结果。

还有其他替代方法吗?

SELECT    t1.ID
        , t2.FID
FROM (
        Select Value As ID
                , ROW_NUMBER() OVER (ORDER BY  Value) rn       
        from STRING_SPLIT(@id,'#')
    ) t1
INNER JOIN 
        (
           Select Value AS FID
                , ROW_NUMBER() OVER (ORDER BY  Value) rn 
           from STRING_SPLIT(@fid,'#')
        ) t2 ON t1.rn = t2.rn