Query SQL Trasforma gli elementi del campo in colonne - sql, ms-access

Ho un tavolo che sembra così

[Serial Number]   [EventNumber]    [DateTimeStamp]     [DataElement]  [DataValue]
XXXX1                 1          7/7/2013 10:00 AM        Height         62
XXXX1                 1          7/7/2013 10:00 AM        Mass           12
XXXX1                 1          8/3/2013 3:00 PM         Length         13
XXXX1                 1          8/3/2013 3:00 PM         Width          60
XXXX1                 2          10/10/2013 10:00 AM      Height         22
XXXX1                 2          10/10/2013 10:00 AM      Mass           21
XXXX1                 2          10/12/2013 10:00 AM      Length         7
XXXX1                 2          10/12/2013 11:00 AM      Width          67

I lavoratori in fabbrica inseriscono i dati attraverso ainterfaccia web e finisce in questa tabella. La tabella contiene centinaia di numeri di serie e ciascun numero seriale può contenere fino a 19 o più eventi. Ogni evento è alcuni parametri che vengono misurati. Dopo aver effettuato le misurazioni, vengono apportate alcune modifiche e le misure vengono riprese per un evento sequenziale.

Vorrei creare una tabella simile a quella di un numero seriale specifico tramite query SQL

[Serial Number]  [EventNumber] [Height]    [Mass]    [Width]   [Lenght]
XXXX1                  1           62          12       13        20
XXXX1                  2           10          etc     etc
XXXX1                  3           etc
XXXX1                  4           etc

So che ho bisogno di usare il pivot, ma non posso necessariamente trovare il codice SQL corretto.

Nota: i dati utilizzati in questo esempio sono costituiti, ma la struttura è la stessa.

Grazie in anticipo

risposte:

0 per risposta № 1

prova questo:

TRANSFORM Sum(t.DataValue) AS SumOfDataValue
SELECT t.[Serial Number], t.EventNumber
FROM Table1 AS t
GROUP BY t.[Serial Number], t.EventNumber
PIVOT t.DataElement;

Fammi sapere se qualche problema.


Menu