Buonasera a tutti
ho due tabelle su MS SQL:
Personale(dipendente, mese, costo) dove la chiave è dipendente & mese, perchè ogni mese un dipendente ha costi diversi
EffortNorm(dipendente, divisione, effort) dove la chiave è dipendente & divisione, perchè ogni dipendente per mansionario deve dedicare una percentuale del proprio tempo a divisioni diverse. Per es il dipendente 1 sta il 40% del tempo in amministrazione e il 60% in produzione.
Dovrei fare una vista/query che ribalti il costo mensile di ciascun dipendente su ciascun dipartimento, in percentuale.
Quindi per ogni coppia dipendente - mese vorrei i vari dipartimenti con il prodotto effort % per costo mensile dipendente.
Se tento di creare la vista con gli strumenti di SQL mi propone un cross join, che non è quello che voglio.
SELECT dbo.Personale.[CODICE DIPENDENTE], dbo.Personale.MESE, dbo.EffortNorm.Divisione, dbo.EffortNorm.Effort * dbo.Personale.[TOTALE COSTO] AS [costo per dipartimento]
FROM dbo.EffortNorm CROSS JOIN dbo.Personale
Sono però riuscito a ottenere quello che voglio creando una pivot della tabella EffortNorm, dove per ogni valore di Divisione ho una colonna con l'effort e il costo corrispondente. Questa soluzione non è pratica perchè Divisione non è più una variabile su cui poi posso fare delle tabelle pivot. Inoltre, la tabella pivot di appoggio ha tante colonne quante le divisioni aziendali (tante).
Potete aiutarmi? Grazie