>ID | DIRETTO | SARA ASSICURAZIONI
>ID | INDIRETTO | GENERALI
Puoi ricorrere all'espressione CASE:
USE tempdb;
GO
CREATE TABLE dbo.Moduli(
idmodulo int IDENTITY(1,1) NOT NULL,
indennizzo nvarchar(50) NULL,
veicoloragione nvarchar(50) NULL,
assicurazioneveicoloa nvarchar(100) NULL,
assicurazioneveicolob nvarchar(100) NULL,
CONSTRAINT PK_Moduli PRIMARY KEY CLUSTERED(idmodulo)
);
INSERT dbo.Moduli VALUES
(N'DIRETTO', N'VEICOLO A', N'SARA ASSICURAZIONI', N'GENERALI')
, (N'INDIRETTO', N'VEICOLO A', N'SARA ASSICURAZIONI', N'GENERALI');
SELECT
idmodulo
, indennizzo
, CASE indennizzo
WHEN N'DIRETTO' THEN assicurazioneveicoloa
ELSE assicurazioneveicolob
END AS assicurazione
FROM dbo.Moduli;
/* Output:
idmodulo indennizzo assicurazione
----------- ----------- -------------------
1 DIRETTO SARA ASSICURAZIONI
2 INDIRETTO GENERALI
(2 row(s) affected)
*/
DROP TABLE dbo.Moduli;
>Grazie
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org