1

我有一个函数,它将一个字符串和一个字符作为输入,它将用这个字符分割字符串并返回列

DECLARE @strIndustryID varchar(MAX)='1,2,3,4,5,6,7,44,55,66,77,88'
DECLARE @strIndustryDescription varchar(MAX)='desc1|desc2|desc3|desc4|desc5|desc6|desc7|desc44|desc55|desc66|desc77|desc88'
DECLARE @COUNT INT=0
SELECT * FROM dbo.Split(@strIndustryID,',');
SELECT * FROM dbo.Split(@strIndustryDescription,'|');

并由第一个查询输出

1
2
3
4
5
6
7
44
55
66
77
88

并从第二个查询

desc1
desc2
desc3
desc4
desc5
desc6
desc7
desc44
desc55
desc66
desc77
desc88

现在我想要像这样的输出

<pre lang="vb">desc1
Col1 col2
2   desc2
3   desc3
4   desc4
5   desc5
.
.
.
.

我想将这些列插入到 table1 中,它有一个名为 col1 和 col2 的列

我怎样才能做到这一点?

4

1 回答 1

0
DECLARE @strIndustryID varchar(MAX)='1,2,3,4,5,6,7,44,55,66,77,88'
DECLARE @strIndustryDescription varchar(MAX)='desc1|desc2|desc3|desc4|desc5|desc6|desc7|desc44|desc55|desc66|desc77|desc88'
DECLARE @COUNT INT=0
SELECT a, b  FROM
(
SELECT a FROM dbo.Split(@strIndustryID,',') t1 CROSS JOIN 
SELECT b FROM dbo.Split(@strIndustryDescription,'|') t2
) AS main
WHERE a = REPLACE(b, 'desc', '')
于 2013-04-12T12:37:00.687 回答