1-SalesOrderHeader :Cette table contient des informations
générales sur les commandes,
telles que la date de commande,
le client, et l'état de la commande
2-SalesOrderDetail :Cette table contient des détails sur les articles
inclus dans chaque commande,
tels que les quantités, les prix unitaires, et les remises.
3-Customer :La table des clients contient des informations
sur les clients, comme leur nom, adresse, etc.
4-Product :Cette table contient des informations
sur les produits vendus, y compris les catégories
de produits, les noms, et les numéros de produit.
5-SalesTerritory :Cette table peut être utile pour analyser
les ventes par territoire géographique.
6-Date :Une table de dimension temps (Date) pourrait être créée
à partir des colonnes de dates présentes dans les tables de commandes,
pour permettre des analyses temporelles.
===============================================================================
SELECT
[Link],
[Link],
[Link],
SUM([Link]) AS TotalSales
FROM
[Link] c
JOIN
[Link] oh ON [Link] = [Link]
JOIN
[Link] od ON [Link] = [Link]
WHERE
[Link] BETWEEN '2022-01-01' AND '2022-12-31'
GROUP BY
[Link], [Link], [Link]
ORDER BY
TotalSales DESC;
===============================================================================
CREATE TABLE FactSales (
FactSalesID INT PRIMARY KEY,
OrderID INT, -- Clé étrangère liée à SalesOrderHeader
ProductID INT, -- Clé étrangère liée à Product
CustomerID INT, -- Clé étrangère liée à Customer
SalesAmount DECIMAL(18, 2),
Quantity INT,
Discount DECIMAL(18, 2),
OrderDate DATE, -- Peut également être liée à une table de dimension temps
CONSTRAINT FK_FactSales_Order FOREIGN KEY (OrderID) REFERENCES
SalesOrderHeader(SalesOrderID),
CONSTRAINT FK_FactSales_Product FOREIGN KEY (ProductID) REFERENCES
Product(ProductID),
CONSTRAINT FK_FactSales_Customer FOREIGN KEY (CustomerID) REFERENCES
Customer(CustomerID)
);