De la Clause 

Le FROM clause spécifie la source à partir de laquelle lire les données:

JOIN et ARRAY JOIN les clauses peuvent également être utilisées pour étendre la fonctionnalité de la FROM clause.

Subquery est un autre SELECT requête qui peut être spécifié entre parenthèses à l'intérieur FROM clause.

FROM la clause peut contenir plusieurs sources de données, séparées par des virgules, ce qui équivaut à effectuer CROSS JOIN sur eux.

Modificateur FINAL 

Lorsque FINAL est spécifié, ClickHouse fusionne complètement les données avant de renvoyer le résultat et effectue ainsi toutes les transformations de données qui se produisent lors des fusions pour le moteur de table donné.

Il est applicable lors de la sélection de données à partir de tables qui utilisent MergeTree-la famille de moteurs (à l'exception de GraphiteMergeTree). Également pris en charge pour:

Inconvénient 

Requêtes qui utilisent FINAL sont exécutés pas aussi vite que les requêtes similaires qui ne le font pas, car:

  • La requête est exécutée dans un seul thread et les données sont fusionnées lors de l'exécution de la requête.
  • Les requêtes avec FINAL lire les colonnes de clé primaire en plus des colonnes spécifiées dans la requête.

Dans la plupart des cas, évitez d'utiliser FINAL. L'approche commune consiste à utiliser différentes requêtes qui supposent les processus d'arrière-plan du MergeTree le moteur n'est pas encore arrivé et y faire face en appliquant l'agrégation (par exemple, pour éliminer les doublons).

Détails De Mise En Œuvre 

Si l' FROM la clause est omise, les données seront lues à partir system.one table.
Le system.one table contient exactement une ligne (cette table remplit le même but que la table double trouvée dans d'autres SGBD).

Pour exécuter une requête, toutes les colonnes mentionnées dans la requête sont extraites de la table appropriée. Toutes les colonnes non nécessaires pour la requête externe sont rejetées des sous-requêtes.
Si une requête ne répertorie aucune colonne (par exemple, SELECT count() FROM t), une colonne est extraite de la table de toute façon (la plus petite est préférée), afin de calculer le nombre de lignes.

Évaluation: 3 - 2 vote

Ce contenu a été utile?
★★★☆☆