我创建了一个查询 SQL Server,它分解我的文件夹并按行转换(由“\”分隔)
例如:我的文件夹"N:\TESTEA\subTESTEB"
原来是。在我的新表中,此值为:每行的文件夹名称。
N:
TESTEA
subTESTEB
但是,我需要在列中转换它的行。第 1 列中的第 1 行;第 2 列中的第 2 行;等等。
谁知道这有什么解决办法?一个问题:这个文件夹有多个级别,而不是标准级别!
我很清楚?
下面是我的 SQL 查询(我不知道这里的 SQL 代码格式!):
DECLARE @ARRAY VARCHAR(8000), @DELIMITADOR VARCHAR(100), @S VARCHAR(8000),@ARRAYFinal VARCHAR(8000)
select sub_folder_path into #sub_folder_path from GROUP_FOLDER_ACCESS
SELECT @DELIMITADOR = '\'
CREATE TABLE ARRAY(ITEM_ARRAY VARCHAR(8000))
WHILE (select COUNT(*) from #sub_folder_path) > 0
BEGIN
SELECT @ARRAY = sub_folder_path from #sub_folder_path ORDER BY sub_folder_path
SET @ARRAYFinal = @ARRAY
SET @ARRAY = @ARRAY + @DELIMITADOR
WHILE LEN(@ARRAY) > 0
BEGIN
SELECT @S = LTRIM(SUBSTRING(@ARRAY, 1, CHARINDEX(@DELIMITADOR, @ARRAY) - 1))
INSERT INTO ARRAY (ITEM_ARRAY) VALUES (@S)
SELECT @ARRAY = SUBSTRING(@ARRAY, CHARINDEX(@DELIMITADOR, @ARRAY) + 1, LEN(@ARRAY))
END
DELETE #sub_folder_path WHERE sub_folder_path = @ARRAYFinal
END