SAFE_SUBTRACT |
Soustraction sécuritaire |
| BigQuery |
Syntaxe
Paramètres
| Nom |
Description |
| X |
Ce paramètre permet de spécifier le nombre duquel (le minuend) la soustraction sera effectuée. Il peut être de tout type numérique. |
| Y |
Ce paramètre permet de spécifier le nombre à soustraire (le subtrahend). Il doit être compatible avec le type de données de X. |
Description
Cette fonction permet d'effectuer une soustraction et de retourner la valeur NULL si une exception se produit.
Remarques
- Soustraction sans risque d'erreur fatale : SAFE_SUBTRACT permet d'effectuer une soustraction tout en évitant les erreurs d'exécution en cas de
dépassement de capacité (overflow). Cela est particulièrement utile avec les types entiers comme INT64 où le résultat pourrait dépasser les bornes autorisées.
- Retour de NULL en cas d'exception : Lorsque le résultat d'une soustraction est invalide ou cause une erreur, la fonction retourne NULL au lieu
d'interrompre l'exécution. Cela permet à la requête de continuer et au développeur de traiter ces cas avec des fonctions comme IFNULL() ou COALESCE().
- Utilisation sécurisée dans les pipelines automatisés : Dans les processus d'analyse de données automatisés, SAFE_SUBTRACT améliore la fiabilité car
elle évite les arrêts brusques dus à des erreurs de calcul inattendues. Cela garantit la continuité du traitement, même avec des entrées non prévues.
- Alternative sûre à l'opérateur - : Comparé à une soustraction classique (X - Y), SAFE_SUBTRACT ajoute une couche de sécurité. Elle est donc préférable
dans les cas où les données peuvent contenir des valeurs extrêmes ou inattendues.
- Préserve la compatibilité des types : Les deux paramètres doivent être compatibles en termes de type numérique. Cela signifie que l'utilisateur doit
veiller à harmoniser les types avant l'appel, pour éviter des comportements incohérents.
- Particulièrement utile pour les types INT64 et NUMERIC : Les types numériques avec des limites de précision ou de taille (comme INT64 ou NUMERIC) peuvent
facilement générer des erreurs lors d'opérations arithmétiques. SAFE_SUBTRACT est conçue pour réduire ce risque.
- Simplifie le traitement conditionnel : En renvoyant NULL en cas de problème, la fonction permet une détection facile via IS NULL, ce qui facilite
la gestion conditionnelle sans recourir à des blocs d'erreurs ou des validations préalables compliquées.
- Approche défensive dans l'architecture de requêtes SQL : SAFE_SUBTRACT s'inscrit dans une stratégie de programmation défensive, où l'on anticipe les
défaillances possibles sans perturber la logique générale. Elle favorise donc des requêtes plus stables et résilientes.
Dernière mise à jour : Jeudi, le 18 Juin 2020