У меня есть таблица со списком файлов и папок, импортированных из CSV-файла.Столбцы таблицы имеют в основном FullName
(путь к файлу или папке) и FileExtension
.
Я могу получить список всех папок и соответствующее количество файлов в этих папках, используя следующий запрос
SELECT
SUBSTRING(FullName, 0, LEN(FullName) - CHARINDEX('\', REVERSE(FullName)) + 1) AS RootFolder,
COUNT(*) AS FileCount
FROM
FileDump
WHERE
NULLIF(FileExtension, '') IS NOT NULL
GROUP BY
SUBSTRING(FullName, 0, LEN(FullName) - CHARINDEX('\', REVERSE(FullName)) + 1)
ORDER BY
FileCount DESC
Однако я хотел бы получить, если в папке есть подпапки ив этих подпапках есть файлы, тогда в число файлов для любой папки также должны входить все эти файлы под
Образцы данных для полного имени
C:\Folder1
C:\Folder1\File1.xlsx
C:\Folder1\File2.xlsx
C:\Folder1\Folder2
C:\Folder1\Folder2\file3.xlsx
Ожидаемый результат
C:\Folder1 - 3
C:\Folder1\Folder2 - 1