Obtenir des résultats de requête asynchrones
Renvoie les résultats d'une tâche de requête asynchrone si la requête est terminée.
Si la tâche de requête est toujours en cours d'exécution ou en attente d'exécution, cette fonction renvoie 204 Aucun contenu.
Si l'ID de la tâche de requête n'est pas valide ou que les résultats mis en cache ont expiré, cette fonction renvoie 404 Not Found.
Utilisez query_task(query_task_id) pour vérifier l'état d'exécution de la tâche de requête. N'appelez query_task_results que lorsque l'état de la tâche de requête est atteint.
Vous pouvez également utiliser query_task_multi_results() pour récupérer les résultats de plusieurs tâches de requête asynchrones en même temps.
Traitement des erreurs SQL:
Si la requête échoue en raison d'une erreur de la base de données SQL, la manière dont elle est communiquée dépend du format result_format que vous avez demandé dans create_query_task()
.
Pour le paramètre json_detail
result_format: query_task_results()
répond avec l'état HTTP "200 OK" et les informations d'erreur SQL db sont dans la propriété errors
de l'objet de réponse. La propriété "data" sera vide.
Pour tous les autres formats de résultat: query_task_results()
répond avec l'état HTTP 400 Bad Request
. Des informations sur les erreurs SQL db sont présentes dans le message de réponse d'erreur 400, mais elles ne sont pas aussi détaillées que celles indiquées dans json_detail.errors
.
Ces formats de données ne peuvent contenir que des données de ligne, et les informations d'erreur ne sont pas des données de ligne.
Demande
Réponse
200: les résultats de la requête.
204: La requête n'est pas terminée.
400 Bad Request
404: L'ID de tâche de requête est introuvable ou les résultats ont expiré.
Examples
Python
https://github.com/looker-open-source/sdk-codegen/blob/main/examples/python/query_task.py |
https://github.com/looker-open-source/sdk-codegen/blob/main/examples/python/query_task.py |