list_files tabulková hodnotová funkce

Platí pro:check marked yes Databricks SQL check marked yes Databricks Runtime 18 LTS and above

Important

Tato funkce je v beta verzi. Správci pracovního prostoru můžou řídit přístup k této funkci ze stránky Previews . Viz Manage Azure Databricks preview.

Vrací seznam souborů na cestě, včetně odkazu FILE na každý soubor.

Syntax

list_files(path [, connection => connection ] [, recursive => recursive ])

Arguments

  • path: Cesta STRING k seznamu. Může to být cesta po svazku, externí cesta k umístění nebo cesta v jiném systému pro ukládání souborů, jako je SFTP, SharePoint nebo Google Drive.
  • connection: Volitelné připojení Unity Catalog používané k autentizaci se systémy jako SFTP, SharePoint nebo Google Drive.
  • recursive: Volitelné BOOLEAN , které určuje, zda funkce sestupuje do podadresářů. Přijaté hodnoty jsou:
    • true: Uvádí soubory v cestě a všechny její podadresáře a nevrací adresáře. Toto je výchozí hodnota.
    • false: Uvádí pouze bezprostřední položky cesty a vrací adresáře s odkazem nullfile a .size0

Argumenty connection a recursive musí být předávány jménem pomocí => syntaxe, například connection => my_conn.

Returns

Tabulka s jedním řádkem na každý soubor, s následujícími sloupci:

Sloupec Typ Description
path STRING Cesta k souboru.
size BIGINT Velikost souboru v bajtech.
modification_time TIMESTAMP Poslední čas úpravy souboru v UTC.
file FILE Odkaz na soubor.

Běžné chybové podmínky

  • LIST_FILES_AUTHORIZATION_ERROR.ON_PATH
  • LIST_FILES_AUTHORIZATION_ERROR.ON_CONNECTION
  • LIST_FILES_ERROR.PATH_NOT_EXISTS
  • LIST_FILES_ERROR.CONNECTION_NOT_EXISTS

Pro více informací viz Chybové podmínky v Azure Databricks.

Examples

Pro seznam souborů v adresáři svazků:

SELECT * FROM list_files('/Volumes/my_catalog/my_schema/my_volume/');

Funkce vrací jeden řádek na každý soubor:

path                                                 size   modification_time         file
/Volumes/my_catalog/my_schema/my_volume/file1.json   1234   2026-04-11 00:00:00.000   <file>

Pro seznam souborů z externího systému pomocí připojení Unity Catalog:

SELECT path, size FROM list_files('https://drive.google.com/drive/folders/my-folder-id', connection => my_gdrive_connection);

Pro seznam pouze bezprostředních položek adresáře nastavte recursive na false:

SELECT * FROM list_files('/Volumes/my_catalog/my_schema/my_volume/', recursive => false);

Adresáře se objevují ve výsledcích s odkazem nullfile a :size0

path                                                 size   modification_time         file
/Volumes/my_catalog/my_schema/my_volume/file1.json   1234   2026-04-11 00:00:00.000   <file>
/Volumes/my_catalog/my_schema/my_volume/subdir/      0      2026-04-11 00:00:00.000   NULL

Pro výpočet celkové velikosti všech souborů v adresáři se sečte sloupec size . Protože recursive výchozí je , truezahrnuje to soubory v podadresářích:

SELECT sum(size) AS total_bytes FROM list_files('/Volumes/my_catalog/my_schema/my_volume/');

Dotaz vrací kombinovanou velikost v bajtech:

total_bytes
1234