Interrogation des données dans Snowflake¶
Snowflake prend en charge le SQL standard, dont un sous-ensemble de ANSI SQL:1999 et les extensions d’analyse SQL:2003. Snowflake prend également en charge les variations communes d’un certain nombre de commandes où ces variations ne sont pas en conflit les unes avec les autres.
Astuce
Vous pouvez utiliser le service d’optimisation de recherche pour améliorer les performances des requêtes. Pour plus de détails, voir Service d’optimisation de la recherche.
- Utilisation des jointures (ou jonctions)
Une jointure combine des lignes de deux tables pour créer une nouvelle ligne combinée qui peut être utilisée dans la requête.
Apprendre les concepts de jointure, les types de jointure et comment travailler avec les jointures.
- Jointure de données de séries temporelles
Une jointure ASOF JOIN est généralement utilisée pour joindre des tables contenant des données de série chronologique.
Apprenez à joindre des tables sur des colonnes d’horodatage lorsque leurs valeurs se suivent de près, se précèdent ou correspondent exactement.
- Éliminer les jointures redondantes
Une jointure sur une colonne clé peut faire référence à des tables qui ne sont pas nécessaires pour la jointure. Une telle jointure est appelée jointure redondante.
Découvrez les jointures redondantes et comment les éliminer pour améliorer les performances des requêtes.
- Utilisation des sous-requêtes
Une sous-requête est une requête dans une autre requête.
Découvrez les sous-requêtes et apprenez à les utiliser.
- Interrogation des données hiérarchiques
Les bases de données relationnelles stockent souvent des données hiérarchiques en utilisant différentes tables.
Apprenez à interroger des données hiérarchiques à l’aide de jointures, d’expressions de table communes (CTEs) et de CONNECT BY.
- Utilisation de CTEs (expressions de table communes)
Une CTE (expression de table commune) est une sous-requête nommée définie dans une clause WITH, dont le résultat est effectivement une table.
Apprenez à écrire et à travailler avec des expressions CTE.
- Interrogation de données semi-structurées
Les données semi-structurées représentent des structures de données hiérarchiques arbitraires, qui peuvent être utilisées pour charger et exploiter des données dans des formats semi-structurées (par exemple JSON, Avro, ORC, Parquet ou XML).
Découvrez comment utiliser des opérateurs et des fonctions spéciales pour interroger des données hiérarchiques complexes stockées dans un VARIANT.
- Utilisation de fonctions de fenêtre
Les fonctions de fenêtre fonctionnent sur les fenêtres, qui sont des groupes de lignes qui sont liées d’une manière ou d’une autre.
Découvrez les fenêtres, les fonctions de fenêtre et la manière d’utiliser les fonctions de fenêtre pour examiner des données.
- Identification des séquences de lignes qui correspondent à un modèle
Dans certains cas, vous pouvez avoir besoin d’identifier des séquences de lignes de table qui correspondent à un modèle.
Découvrez la correspondance des motifs et comment utiliser MATCH_RECOGNIZE pour travailler avec des lignes de table correspondant à des modèles.
- Utilisation de séquences
Les séquences sont utilisées pour générer des nombres uniques dans les sessions et les instructions, y compris des instructions simultanées.
Découvrez ce que sont les séquences et comment les utiliser.
- Utilisation de résultats de requête persistants
Lorsqu’une requête est exécutée, le résultat est conservé pendant un certain temps.
Découvrez comment les résultats des requêtes sont persistants, pendant combien de temps les résultats persistants sont disponibles et comment utiliser les résultats des requêtes persistants pour améliorer les performances.
- Calcul du nombre de valeurs distinctes
Il existe différentes méthodes pour déterminer le nombre d’éléments distincts dans une colonne.
Découvrez des méthodes pour identifier et rapporter des éléments distincts dans des données.
- Estimation de la similarité de deux ensembles ou plus
Snowflake fournit des mécanismes permettant de comparer des ensembles de données en fonction de leur similarité.
Apprenez comment Snowflake détermine la similarité et comment comparer plusieurs ensembles de données.
- Estimation des valeurs fréquentes
Snowflake peut examiner des données pour déterminer la fréquence des valeurs dans les données.
Apprenez comment la fréquence est déterminée et comment interroger des données pour déterminer la fréquence des données en utilisant la famille de fonctions APPROX_TOP_K.
- Estimation des valeurs centiles
Snowflake peut estimer des pourcentages de valeurs en utilisant l’algorithme t-Digest.
Apprendre à estimer des pourcentages à l’aide de la famille de fonctions APPROX_PERCENTILE.
- Analyse des requêtes à l’aide du profil de requête
Les profils de requête fournissent des détails sur l’exécution d’une requête.
Découvrez comment examiner des requêtes en utilisant des profils de requête pour comprendre et améliorer les performances.
- Utilisation du hachage des requêtes pour identifier des modèles et des tendances dans les requêtes
Pour identifier des modèles et des tendances dans les requêtes, vous pouvez utiliser le hachage du texte de la requête, qui est inclus dans les colonnes
query_hash
etquery_parameterized_hash
de la vue Account Usage sélectionnée et dans la sortie des fonctions de table Information Schema sélectionnées.Apprenez à utiliser le hachage des requêtes dans ces colonnes pour identifier les requêtes répétées et détecter des modèles et des tendances dans les requêtes.
- Annulation d’instructions
Les instructions d’exécution sont généralement annulées à l’aide de l’interface utilisée pour lancer la requête.
Apprenez à utiliser les fonctions du système pour annuler une requête spécifique ou toutes les requêtes en cours d’exécution.