Aller au contenu principal
SaaS · On-premise

Créer des tables et des vues

Table​

Menu + > Table : choisissez la base, définissez les colonnes, le modèle (Duplicate, Unique ou Aggregate Key), les colonnes clés et la distribution.

En SQL :

CREATE TABLE analytics.sales (
dt DATE NOT NULL,
region VARCHAR(32),
amount DECIMAL(12,2)
)
DUPLICATE KEY(dt)
AUTO PARTITION BY RANGE (date_trunc(dt, 'month')) ()
DISTRIBUTED BY HASH(region) BUCKETS AUTO
COMMENT 'Ventes journalières';

Le choix du modèle, du partitionnement et de la distribution est détaillé dans Concevoir une table.

À partir d'une autre table​

-- Structure seule
CREATE TABLE analytics.sales_archive LIKE analytics.sales;

-- Structure et données (CTAS)
CREATE TABLE analytics.sales_by_region
DISTRIBUTED BY HASH(region) BUCKETS AUTO
AS SELECT dt, region, SUM(amount) AS total FROM analytics.sales GROUP BY dt, region;

Modifier​

ALTER TABLE analytics.sales ADD COLUMN channel VARCHAR(16) AFTER region;
ALTER TABLE analytics.sales MODIFY COLUMN region VARCHAR(64);
ALTER TABLE analytics.sales DROP COLUMN channel;
ALTER TABLE analytics.sales RENAME sales_v2;

Supprimer​

DROP TABLE analytics.sales;

La table reste récupérable pendant un jour avec RECOVER TABLE, sauf si FORCE a été utilisé. Voir Sauvegarde et restauration.

Vue​

Une vue est une requête SELECT enregistrée, exécutée à chaque lecture.

Menu + > View : choisissez la base, nommez la vue et saisissez la requête.

En SQL :

CREATE VIEW analytics.v_sales_by_region AS
SELECT dt, region, SUM(amount) AS total, COUNT(*) AS orders
FROM analytics.sales
GROUP BY dt, region;

ALTER VIEW analytics.v_sales_by_region AS SELECT …;
DROP VIEW analytics.v_sales_by_region;