Desculpe se esta pergunta é muito básica, mas eu simplesmente não consigo descobrir e não consegui encontrar boas respostas.
Eu tenho uma lista muito longa de arquivos, pastas e tamanhos. Preciso separar as pastas para colunas, que tenho uma coluna para cada pasta.
Eu tenho um FilePath como uma String (por exemplo, folder1\folder2\folder3). Eu quero separar isso em várias colunas:
First | Second | Third | Fourth | ...
folder1 | folder2 | folder3 | NULL | ...
Foldera | folde rb | folderc | folderd |
usando cross apply string_split(PATH,'\')como pasta eu recebo Folder1. usando row_Number() eu posso definir qual pasta eu tenho na minha coluna, mas é sempre apenas 1 coluna.
Exemplo real:
select [Parentpath], [Size], [spl].[value] from Files
cross apply string_split([ParentPath], '\') as [spl]
Parentpath || Size || Value
Business\Packets\Data\Archive || 29334 || Business
Isso também não é bonito, mas permite tantas\sub\pastas\quanto\você\pode\ter.
Com esses dados de exemplo, obtenho os seguintes resultados:
Encontrei uma solução, embora eu não tenha certeza, essa é a melhor maneira de fazê-lo, mas com certeza, essa não é a maneira mais bonita de fazê-lo.
está me dando:
Deixei de fora o Tamanho, pois estava interessado em dividir o Caminho em pastas separadas primeiro.
Edit: Desculpe, esta captura de tela é diferente da pergunta, devido à classificação dos resultados. Para esclarecer: ParentPath para o resultado exibido seria: "Business Intelligence\GLS Paketdaten \ GLS Daten Archiv"
Ou como Tabela com conteúdo postado:
PS Desculpe, Inglês não é minha primeira língua. Espero ter escrito compreensível.