Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Quelle syntaxe SQL est prise en charge par ClickHouse ?

ClickHouse prend intégralement en charge la syntaxe SQL, y compris des fonctionnalités telles que :

  • SQL/JSON et le type de données JSON (SQL-2023)
  • fonctions de fenêtre (SQL-2003)
  • expressions de table communes et requêtes récursives (SQL-1999)
  • ROLLUP, CUBE et GROUPING SETS (SQL-1999)
  • prise en charge complète de RBAC (SQL-1999)
  • sous-requêtes corrélées (SQL-1992) ;

Cette prise en charge est validée par les benchmarks TPC-H et TPC-DS, ainsi que par SQLTest.

ClickHouse a introduit de nombreuses fonctionnalités avant leur normalisation ultérieure par l'ISO/IEC, telles que :

  • fonctions d'agrégation conditionnelles
  • fonctions d'agrégation any
  • least et greatest
  • GROUP BY ALL
  • usage étendu des alias
  • traits de soulignement dans les littéraux numériques

ClickHouse étend le SQL en y apportant d'importantes améliorations de confort d'utilisation :

  • utilisation sans restriction des alias
  • alias dans la clause WITH
  • combinateurs de fonctions d'agrégation
  • fonctions d'agrégation paramétrées
  • fonctions d'agrégation approximatives
  • types de données numériques natifs et entiers de grande taille, Decimal à précision étendue
  • fonctions d'ordre supérieur pour la manipulation des tableaux
  • clause ARRAY JOIN et fonction arrayJoin
  • agrégation de tableaux
  • clause LIMIT BY
  • GROUP BY WITH TOTALS
  • AS OF JOIN
  • ANY/ALL JOIN
  • syntaxe naturelle pour JSON
  • virgule finale dans la liste des colonnes
  • ordre des clauses FROM … SELECT
  • paramètres de requête fortement typés et vues paramétrées

Certaines d'entre elles pourraient être intégrées aux prochaines normes SQL, tout en étant déjà disponibles pour les utilisateurs de ClickHouse.

Navigation