Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :
Databricks SQL
Databricks Runtime 18 LTS et versions ultérieures
Important
Cette fonctionnalité est en version bêta.
Retourne la liste des fichiers sur un chemin, incluant une FILE référence pour chaque fichier.
Syntax
list_files(path [, connection => connection ] [, recursive => recursive ])
Arguments
-
path: UnSTRINGchemin à lister. Cela peut être un chemin de volume, un chemin de localisation externe, ou un chemin sur un autre système de stockage de fichiers comme SFTP, SharePoint ou Google Drive. -
connection: Une connexion optionnelle au catalogue Unity utilisée pour s’authentifier avec des systèmes tels que SFTP, SharePoint ou Google Drive. -
recursive: Une optionBOOLEANqui contrôle si la fonction descend dans des sous-répertoires. Les valeurs acceptées sont les suivantes :-
true: Liste les fichiers dans le chemin et tous ses sous-répertoires, et ne retourne pas les répertoires. Il s’agit de la valeur par défaut. -
false: Liste uniquement les entrées immédiates du chemin, et retourne les annuaires avec unenullfileréférence et unsizede0.
-
Les connection arguments et recursive doivent être transmis par nom en utilisant => la syntaxe, par exemple connection => my_conn.
Returns
Un tableau d’une ligne par fichier, avec les colonnes suivantes :
| Column | Type | Description |
|---|---|---|
path |
STRING |
Chemin d’accès au fichier. |
size |
BIGINT |
Taille du fichier, en octets. |
modification_time |
TIMESTAMP |
Le dernier temps de modification du fichier, dans UTC. |
file |
FILE |
Une référence au dossier. |
Conditions d’erreur courantes
LIST_FILES_AUTHORIZATION_ERROR.ON_PATHLIST_FILES_AUTHORIZATION_ERROR.ON_CONNECTIONLIST_FILES_ERROR.PATH_NOT_EXISTSLIST_FILES_ERROR.CONNECTION_NOT_EXISTS
Pour plus d’informations, voir Conditions d’erreur dans Azure Databricks.
Examples
Pour lister les fichiers dans un répertoire de volumes :
SELECT * FROM list_files('/Volumes/my_catalog/my_schema/my_volume/');
La fonction renvoie une ligne par fichier :
path size modification_time file
/Volumes/my_catalog/my_schema/my_volume/file1.json 1234 2026-04-11 00:00:00.000 <file>
Pour lister des fichiers provenant d’un système externe en utilisant une connexion Unity Catalog :
SELECT path, size FROM list_files('https://drive.google.com/drive/folders/my-folder-id', connection => my_gdrive_connection);
Pour ne lister que les entrées immédiates d’un répertoire, on définit recursive à false:
SELECT * FROM list_files('/Volumes/my_catalog/my_schema/my_volume/', recursive => false);
Les annuaires apparaissent dans les résultats avec une nullfile référence et un size de 0:
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
Pour calculer la taille totale de tous les fichiers d’un répertoire, on additionne la size colonne. Parce que recursive par défaut est , truecela inclut les fichiers dans les sous-répertoires :
SELECT sum(size) AS total_bytes FROM list_files('/Volumes/my_catalog/my_schema/my_volume/');
La requête retourne la taille combinée en octets :
total_bytes
1234