SQL, come generare un grafico in Oracle 0
Se vogliamo ottenere un grafico testuale utilizzando solo delle funzioni SQL messe a disposizione da Oracle possiamo utilizzare
la funzione LPAD (left padding) che ha la seguente signature:
lpad( stringa, lunghezza_totale, [ stringa_padding ] )
La funzione non fa altro che riempire la stringa con i caratteri di stringa_padding fino a raggiungere la lunghezza_totale.
ES.
lpad('ciao', 7); restituirà ' ciao'
lpad('ciao', 2); restituirà 'ci'
lpad('ciao', 8, '0'); restituirà '0000tech'
lpad('ciao bellissima', 15, 'H'); restituirà 'ciao bellissima'
lpad('ciao bellissima', 16, 'H'); restituirà 'Hciao bellissima'
Per ottenere un diagramma possiamo utilizzare questa funzione come segue:
SELECT d.nome AS "Dipartimento",
LPAD('*', COUNT(*), '*') as "Grafico"
FROM impiegati i, dipartimenti d
WHERE i.id = d.id
GROUP BY d.nome;
Otterremo come risultato un istogramma con il numero di impiegati di ogni dipartimento
Dipartimento Grafico ------------------ -------------------- GES. PERSONALE ***** RICERCA ************* VENDITE ********* MARKETING ***
Nell’esempio il valore COUNT(*) è usato per controllare il numero di asterischi che compariranno nel grafico.
Analogamente possiamo utilizzare la funzione di right padding per ottenere un istogramma partente da destra.
rpad( stringa, lunghezza_totale, [ stringa_padding ] )
Dipartimento Grafico ------------------ -------------------- GES. PERSONALE ***** RICERCA ************* VENDITE ********* MARKETING ***







