Dans un scénario BI, les array multiensembles (array of multisets) peuvent être utiles pour représenter et analyser des données avec plusieurs valeurs pour un seul attribut. Les arrays multiensembles peuvent être particulièrement pertinents dans des scénarios où vous avez des données à valeurs multiples ou hiérarchiques. Ici, nous traitons un cas d’utilisation courant, à savoir la gestion des catégories de produits, où un produit peut appartenir à plusieurs catégories.
Code de démarrage
— Créer la table Sales
CREATE OR REPLACE TABLE Sales (
Sale_ID INT PRIMARY KEY,
Product_IDs VARIANT –INT
);
— Insérer des données de ventes
INSERT INTO Sales (Sale_ID, Product_IDs) SELECT 1, PARSE_JSON(‘[1, 3]’);– Products A and C in the same sale
INSERT INTO Sales (Sale_ID, Product_IDs) SELECT 2, PARSE_JSON(‘[2, 4]’);– Products B and D in the same sale
— Créer la table Products
CREATE OR REPLACE TABLE Products (
Product_ID INT PRIMARY KEY,
Product_Name VARCHAR,
Product_Categories VARIANT –VARCHAR
);
— Insérer des données d’exemple dans Products
INSERT INTO Products (Product_ID, Product_Name, Product_Categories) SELECT 1, ‘Product A’, ARRAY_CONSTRUCT(‘Electronics’, ‘Gadgets’);
INSERT INTO Products (Product_ID, Product_Name, Product_Categories) SELECT 2, ‘Product B’, ARRAY_CONSTRUCT(‘Clothing’, ‘Accessories’);
INSERT INTO Products (Product_ID, Product_Name, Product_Categories) SELECT 3, ‘Product C’, ARRAY_CONSTRUCT(‘Electronics’, ‘Appliances’);
INSERT INTO Products (Product_ID, Product_Name, Product_Categories) SELECT 4, ‘Product D’, ARRAY_CONSTRUCT(‘Clothing’);
En utilisant les tables que nous venons de créer, comment pouvons-nous trouver les catégories communes parmi les produits vendus ensemble dans une seule transaction ? Comme dans l’exemple ci-dessous.
Laisser un commentaire
Vous devez vous connecter pour publier un commentaire.