Condividi tramite


Scenario relativo ai prodotti

In questo argomento vengono fornite informazioni dettagliate sui dati relativi ai prodotti rappresentati nel database di esempio AdventureWorks, un elenco di tabelle correlate ai prodotti ed esempi di query che illustrano relazioni comuni tra le tabelle.

Panoramica sui prodotti

Adventure Works Cycles è un'azienda produttrice di biciclette che dispone delle quattro linee di prodotti seguenti:

  • Biciclette prodotte presso la società Adventure Works Cycles.
  • Componenti per biciclette, ovvero parti di ricambio quali ruote, pedali e freni.
  • Abbigliamento per ciclisti acquistato dai fornitori a fini di rivendita ai clienti della società Adventure Works Cycles.
  • Accessori per ciclisti acquistati dai fornitori a fini di rivendita ai clienti della società Adventure Works Cycles.

Tabelle correlate ai prodotti

Nella tabella seguente è inclusa una breve descrizione dei dati archiviati nelle tabelle correlate ai prodotti.

Schema.Tabella Tipo di contenuti Commento

Production.BillOfMaterials

Elenco di tutti i componenti utilizzati per produrre le biciclette e i rispettivi componenti di assemblaggio.

La colonna ProductAssemblyID rappresenta il prodotto padre, o principale, mentre ComponentID rappresenta le singole parti, o figli, utilizzate per realizzare il componente padre.

Production.Culture

Lingue in cui sono disponibili le descrizioni dei prodotti.

Le descrizioni dei prodotti sono disponibili in arabo, cinese semplificato, ebraico, francese, inglese e thai.

Production.Location

Elenco di ubicazioni di stoccaggio all'interno della società Adventure Works Cycles nelle quali prodotti e componenti sono immagazzinati a fini di inventario. Ad esempio, la vernice è presente nell'ubicazione Paint Storage nel magazzino e nel centro di produzione Paint Shop dove avviene la verniciatura dei telai delle biciclette.

 

Production.Product

Informazioni relative a tutti i prodotti venduti da Adventure Works Cycles o utilizzati per produrre le biciclette e i rispettivi componenti di Adventure Works Cycles.

Nella colonna FinishedGoodsFlag viene indicato se un prodotto è in vendita. I prodotti non in vendita sono componenti di prodotti in vendita. Ad esempio, la bicicletta è il prodotto in vendita, mentre il foglio di metallo utilizzato per realizzarne il telaio non lo è.

Production.ProductCategory

Classificazione generale di massima dei prodotti. Ad esempio, bicicletta o accessorio.

 

Production.ProductCostHistory

Costo dei prodotti nel tempo.

 

Production.ProductDescription

Descrizione completa dei prodotti nelle varie lingue.

Le descrizioni dei prodotti sono disponibili in arabo, cinese semplificato, ebraico, francese, inglese e thai.

Production.ProductInventory

Il livello di inventario dei prodotti in base alla rispettiva ubicazione. Vedere la colonna Production.Location citata in precedenza.

 

Production.ProductListPriceHistory

Listino prezzi dei prodotti con le relative variazioni apportate nel tempo.

 

Production.ProductModel

Modelli diversi di un prodotto. Ad esempio, Mountain-100 o LL Touring Frame.

Nella colonna CatalogDescription sono incluse ulteriori informazioni sui prodotti archiviate come tipi di dati xml. Nella colonna Instructions sono disponibili istruzioni sulla produzione archiviate come tipi di dati xml.

ProductModelProductDescriptionCulture

Riferimento incrociato tra modelli di prodotti, descrizioni e lingue in cui queste ultime sono disponibili.

 

Production.ProductPhoto

Immagini dei prodotti venduti dalla società Adventure Works Cycles.

Le immagini sono archiviate come tipo di dati varbinary(max).

Production.ProductReview

Commenti dei clienti sui prodotti Adventure Works Cycles.

 

Production.ProductSubcategory

Sottocategorie di prodotti Ad esempio, Mountain, Road e Touring sono sottocategorie della categoria Bike.

 

Esempi

È possibile utilizzare le query seguenti per visualizzare i dati relativi ai prodotti e acquisire familiarità con le relazioni tra le tabelle correlate ai prodotti.

A. Visualizzazione dei prodotti per categoria, sottocategoria e modello

Nell'esempio seguente viene restituito un elenco dei prodotti organizzato in base a categoria, sottocategoria e modello. Non sono inclusi i prodotti non associati ad alcuna categoria. Per includere tutti i prodotti, modificare il join in ProductCategory in un join completo.

USE AdventureWorks;
GO
SELECT PC.Name AS Category, PSC.Name AS Subcategory,
    PM.Name AS Model, P.Name AS Product
FROM Production.Product AS P
    FULL JOIN Production.ProductModel AS PM ON PM.ProductModelID = P.ProductModelID
    FULL JOIN Production.ProductSubcategory AS PSC ON PSC.ProductSubcategoryID = P.ProductSubcategoryID
    JOIN Production.ProductCategory AS PC ON PC.ProductCategoryID = PSC.ProductCategoryID
ORDER BY PC.Name, PSC.Name ;
GO

B. Visualizzazione delle descrizioni dei prodotti per modello

Sono presenti descrizioni per tutti i modelli di prodotti. Ogni descrizione è disponibile in più lingue. Nell'esempio seguente vengono visualizzate le singole descrizioni in tutte le lingue in cui sono disponibili.

[!NOTA] Le descrizioni in alcune lingue potrebbero non essere visualizzate correttamente se i file di supporto linguistico supplementare per gli alfabeti non latini e le lingue orientali non sono installati. Per installare tali file, vedere la documentazione di Windows relativa alle Opzioni internazionali e della lingua.

USE AdventureWorks;
GO
SELECT PM.ProductModelID, PM.Name AS [Product Model], Description, PL.CultureID, CL.Name AS Language
FROM Production.ProductModel AS PM 
    JOIN Production.ProductModelProductDescriptionCulture AS PL 
        ON PM.ProductModelID = PL.ProductModelID
    JOIN Production.Culture AS CL ON CL.CultureID = PL.CultureID
    JOIN Production.ProductDescription AS PD 
        ON PD.ProductDescriptionID = PL.ProductDescriptionID
ORDER BY PM.ProductModelID ;
GO

C. Visualizzazione di un elenco di distinte base a livello singolo relative a un prodotto principale

Nell'esempio seguente vengono visualizzati tutti i componenti utilizzati per realizzare uno specifico prodotto di riferimento principale, ovvero ProductAssemblyID.

USE AdventureWorks;
GO
WITH Parts(AssemblyID, ComponentID, PerAssemblyQty, EndDate, ComponentLevel) AS
(
    SELECT b.ProductAssemblyID, b.ComponentID, b.PerAssemblyQty,
        b.EndDate, 0 AS ComponentLevel
    FROM Production.BillOfMaterials AS b
    WHERE b.ProductAssemblyID = 800
          AND b.EndDate IS NULL
    UNION ALL
    SELECT bom.ProductAssemblyID, bom.ComponentID, p.PerAssemblyQty,
        bom.EndDate, ComponentLevel + 1
    FROM Production.BillOfMaterials AS bom 
        INNER JOIN Parts AS p
        ON bom.ProductAssemblyID = p.ComponentID
        AND bom.EndDate IS NULL
)
SELECT AssemblyID, ComponentID, Name, PerAssemblyQty, EndDate,
        ComponentLevel 
FROM Parts AS p
    INNER JOIN Production.Product AS pr
    ON p.ComponentID = pr.ProductID
ORDER BY ComponentLevel, AssemblyID, ComponentID;
GO

Vedere anche

Concetti

Scenario relativo alla produzione
Scenario relativo ad acquisti e fornitori
Scenario relativo a vendite e marketing

Altre risorse

Scenari di utilizzo di Adventure Works Cycles

Guida in linea e informazioni

Assistenza su SQL Server 2005