Per aggregare i dati all'interno di un dataflow esiste un
"Aggregate Task".
Il suo utilizzo consente di eseguire funzioni di aggregazione sui dati, siano essi derivanti da un file, piuttosto che da DB2 o SQLServer. Insomma, una qualunque sorgente dati.
Con
Integration Services non è sempre possibile eseguire tutte le funzioni di aggregazione su ogni tipo dati.
Ad esempio, prendiamo un data flow con una sorgente dati avente un campo di tipo
int, uno
datetime ed uno
varchar. Ad esempio questa tabella SQL Server 2005:
Facendo doppio click sul task di aggregazione (all'interno di un dataflow) notiamo che:
Il primo può utilizzare tutte le funzioni di aggregazione: Il secondo:
Ed il terzo:
Come sappiamo SQL Server ci consente di utilizzare funzioni di aggregazione come MAX e MIN anche per le stringhe, ed in alcuni casi può risultare utile. I SSIS pongono dei limiti su questo, specificando nella selezione dell’Aggregate Task solo le funzioni valide per ogni tipo di dati. Diciamo che non è ortodosso utilizzare funzioni di aggregazioni MAX e MIN sulle stringhe, anche perché in realtà fungono da ordinamenti.
A mio avviso può essere un limite, ma lascio a voi i commenti