考虑下面的问题:我有两个要分割的字符串:
STR1 = 'b;a;c;d;e'
STR2 = '3;1;4;2;5'
Run Code Online (Sandbox Code Playgroud)
我想根据它们的索引拆分和合并这两个字符串,结果是:
b -> 3
a -> 1
c -> 4
d -> 2
e -> 5
Run Code Online (Sandbox Code Playgroud)
我尝试过STRING_SPLIT,但order by对它们进行了排序。
SELECT A.VALUE, B.VALUE FROM (
SELECT VALUE, ROW_NUMBER() OVER(ORDER BY VALUE) AS RW
FROM STRING_SPLIT('b;a;c;d;e', ';')
) A
INNER JOIN (
SELECT VALUE, ROW_NUMBER() OVER(ORDER BY VALUE) AS RW
FROM STRING_SPLIT('3;1;4;2;5', ';')
) B
ON A.RW = B.RW
Run Code Online (Sandbox Code Playgroud)
这会产生以下结果:
a 1
b 2
c 3
d 4
e 5
Run Code Online (Sandbox Code Playgroud)