>vorrei crearmi una vista che mi elenchi sui diversi record tante
>righe quanti sono i campi con relativo valore ed indicazione
>della matricola
Ciao Luca,
Non ho idea del DBMS che stai utilizzando, ma ti allego un esempio per SQL Server 2005+ basato sull'operatore UNPIVOT:
USE tempdb;
CREATE TABLE dbo.Dati(
Matricola char(10) NOT NULL,
Campo1 varchar(10) NOT NULL,
Campo2 varchar(10) NOT NULL,
Campo3 varchar(10) NOT NULL,
Campo4 varchar(10) NOT NULL,
CONSTRAINT PK_Dati PRIMARY KEY(Matricola)
);
INSERT dbo.Dati VALUES
('0000000001', 'xxxxxxx', 'yyyyyyyy', 'zzzzzzzz', 'kkkkkkk')
, ('0000000002', 'vfdsfvdf', 'oiercorc', 'fdvsdfdf', 'dfvdsfvv')
, ('0000000003', 'cecasdc', 'dscasdas', 'dcasdca', 'ttgsdgvg');
SELECT Matricola, Campo, Valore
FROM dbo.Dati
UNPIVOT (
Valore FOR Campo IN(Campo1, Campo2, Campo3, Campo4)
) AS UNPV;
/* Output:
Matricola Campo Valore
---------- ------- ----------
0000000001 Campo1 xxxxxxx
0000000001 Campo2 yyyyyyyy
0000000001 Campo3 zzzzzzzz
0000000001 Campo4 kkkkkkk
0000000002 Campo1 vfdsfvdf
0000000002 Campo2 oiercorc
0000000002 Campo3 fdvsdfdf
0000000002 Campo4 dfvdsfvv
0000000003 Campo1 cecasdc
0000000003 Campo2 dscasdas
0000000003 Campo3 dcasdca
0000000003 Campo4 ttgsdgvg
(12 row(s) affected)
*/
DROP TABLE dbo.Dati;
>Grazie mille
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org