从执行结果中拆分字符串
Split string from execute result
我这样执行查询时得到了结果:
+--------+--------+
- col1 - col2 -
+--------+--------+
- a,b - 1 -
- a,c - 2 -
- b,c - 3 -
- a,b,c - 4 -
- a,c,d - 5 -
+--------+--------+
如何仅使用 "a" 或 "b" 或 "c"
将每个结果行拆分为新行结果
+--------+--------+
- col1 - col2 -
+--------+--------+
- a - 1 -
- a - 2 -
- a - 4 -
- a - 5 -
- b - 1 -
- b - 3 -
- b - 4 -
- c - 2 -
- c - 3 -
- c - 4 -
- c - 5 -
- d - 5 -
+--------+--------+
您可以使用 string_split()
:
select s.value, t.col2
from t cross apply
string_split(col1, ',') s
我这样执行查询时得到了结果:
+--------+--------+
- col1 - col2 -
+--------+--------+
- a,b - 1 -
- a,c - 2 -
- b,c - 3 -
- a,b,c - 4 -
- a,c,d - 5 -
+--------+--------+
如何仅使用 "a" 或 "b" 或 "c"
将每个结果行拆分为新行结果+--------+--------+
- col1 - col2 -
+--------+--------+
- a - 1 -
- a - 2 -
- a - 4 -
- a - 5 -
- b - 1 -
- b - 3 -
- b - 4 -
- c - 2 -
- c - 3 -
- c - 4 -
- c - 5 -
- d - 5 -
+--------+--------+
您可以使用 string_split()
:
select s.value, t.col2
from t cross apply
string_split(col1, ',') s