1. Créez une base de données
语法 : CREATE DATABASE [IF NOT EXISTS] nom_base
Si la base de données nom_base existe déjà, aucune nouvelle base de données nom_base ne sera créée.
2. Créez un tableau
语法 : CREATE TABLE t1 (id UInt16, name String) ENGINE = TinyLog
例如 : create table t1 (id UInt8, name String, address String) engine = MergeTree order by id
3. Insérez des données
语法 : INSERT INTO [db.] Table [(c1, c2, c3)] VALUES (v11, v12, v13), (v21, v22, v23),…
例如 : insérer dans t1 (id, nom, adresse) les valeurs (1, 'aa', 'addr1'), (2, 'bb', 'addr2')
4. Afficher la structure du tableau DESCRIBLE
语法 : DESC | DESCRIBE TABLE [db.] Table [INTO OUTFILE filename] [FORMAT format]
Exemple: desc t1
5. Supprimer le tableau
Syntaxe: DROP [TEMPORARY] TABLE [IF
EXISTS] [db.] Nom [ON CLUSTER cluster]
Exemple: drop table t2
6. Formulaire de demande
SELECT [DISTINCT] expr_list
[FROM [db.] Table | (sous-requête) | table_function] [FINAL]
[SAMPLE sample_coeff]
[ARRAY JOIN…]
[GLOBAL] ANY | ALL INNER | LEFT JOIN (sous-requête) | table USING column_list
[PREWHERE expr]
[WHERE expr]
[GROUP BY expr_list] [WITH TOTALS]
[HAVING expr]
[ORDER BY expr_list]
[LIMIT [n,] m]
[UNION ALL…]
[INTO OUTFILE filename]
[FORMAT format]
[LIMIT n BY colonnes]
7 、 ARRAY JOIN
La requête ne peut spécifier qu'une seule clause de jointure de tableau
ARRAY est essentiellement identique à INNER JOIN
8 、 REJOIGNEZ
INNER ou GAUCHE : 同 mysql
ANY ou ALL: si ANY est spécifié, alors seule la première ligne trouvée est connectée, si ALL est spécifié, toutes les lignes correspondantes sont connectées
GLOBAL… JOIN: Requête globale, tout d'abord, le serveur demandeur exécute une sous-requête pour calculer la table correcte. Cette table temporaire est transmise à chaque serveur distant et utilise les données temporaires transmises pour exécuter des requêtes sur eux. Veuillez utiliser GLOBAL… JOIN avec prudence
Le suivi doit être amélioré --------
Adresse du document SQL chinois de Clickhouse: document SQL chinois de Clickhouse