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;