Tabella Calendario

di il
4 risposte

Tabella Calendario

Ciao,
cerco di spiegarvi al meglio.
io ho una tabella con tre colonne:
Utente
Data
Attività
nella colonna utente, va da se, ho una serie di nomi.
nella colonna data, la data che identifica quando è stata svolta l'attività.
tipo di attività

quello che vorrei fare, credo, si chiami pivot, ovvero produrre una tabella, o un report, che sull'asse delle x abbia i giorni del mese e sull'asse delle y il nome utente. in mezzo l'attività incasellata.

come fare?
Thanks!

4 Risposte

  • Re: Tabella Calendario

    Utilizzo di PIVOT e UNPIVOT | Microsoft Docs
    https://docs.microsoft.com/it-it/sql/t-sql/queries/from-using-pivot-and-unpivot
  • Re: Tabella Calendario

    Gibra buongiorno e grazie.
    Si, ci ho guardato ma, e ti prego di correggermi se sbaglio, ha come costante il numero di colonne.
    cosa che io non ho, semplicemente perchè i giorni del mese variano (28, 30, 31).

    nel link da te riportato, viene estratta questa select:
    DaysToManufacture AverageCost
    ----------------- -----------
    0 5.0885
    1 223.88
    2 359.1082
    4 949.4105

    che poi vuole
    SELECT 'AverageCost' AS Cost_Sorted_By_Production_Days,   
    [0], [1], [2], [3], [4]  
    FROM  
    (SELECT DaysToManufacture, StandardCost   
        FROM Production.Product) AS SourceTable  
    PIVOT  
    (  
    AVG(StandardCost)  
    FOR DaysToManufacture IN ([0], [1], [2], [3], [4])  
    ) AS PivotTable; 
    che riporta infatti 0-1-2-3-4

    sto dicendo fesserie?
  • Re: Tabella Calendario

    La pagina ti spiega la SINTASSI per crearti la TUA query PIVOT.
    Quella che ti mostrano è solamente un ESEMPIO.
  • Re: Tabella Calendario

    Perdonate.
    gibra, perdona. insisto perchè stento a capire

    io ho questa query
    select * from z380wcm_test
    pivot (avg (qta) for data in ([2017-10-31],[2017-10-30],[2017-10-29],[2017-10-28],[2017-10-27])) as TizioPerDay
    che restituisce questo meraviglioso output:
    
    Vittorio	NULL	NULL	NULL	NULL	NULL	NULL
    Vittorio 	AAAA	1	NULL	NULL	NULL	NULL
    Giuseppe	BBBB	2	NULL	NULL	NULL	NULL
    Vincenzo	CCC	3	NULL	NULL	NULL	NULL
    Vittorio	DDD	NULL	4	NULL	NULL	NULL
    Vittorio	EEEEE	NULL	NULL	5	NULL	NULL
    Laura	ETRYTRE	NULL	6	NULL	NULL	NULL
    Giuseppe	QQQQQQ	NULL	4	NULL	NULL	NULL
    Vittorio	ujhytgfrde	NULL	NULL	2	NULL	NULL
    Michele	WWWWW	NULL	6	NULL	NULL	NULL
    Vincenzo	ZZZZZ	NULL	12	NULL	NULL	NULL
    
    quello che non capisco è come ovviare alla definizione "hardcoded" delle colonne. quelle fra quadre per intenderci.
    io non so a priori quante e quali colonne ho.
Devi accedere o registrarti per scrivere nel forum
4 risposte