Reputation: 89
I have the following SQL Query in MS Access
SELECT
Laufzettel.ANTRAGSNUMMER,
Laufzettel.Versicherungsnummer,
DP.DUNKEL,
Laufzettel.AEingangDatenstromZWorkflow,
Laufzettel.BEingangesigniertDokumentZWorkflow,
Laufzettel.CAusgangDatenstromZWorkflow,
Laufzettel.DAnlageSchwebeVSL,
Laufzettel.EPolicierungVSL
FROM
DP, Laufzettel;
The DP.DUNKEL is just a single value 1. I want the DP.DUNKEL to be displayed only when Laufzettel.EPolicierungVSL is not NULL else display 0. How can I achieve this as I can't find IF ELSE condition in SQL?
Upvotes: 0
Views: 485
Reputation: 5917
In MS Access you can use the inline IIF(condition,true,false)
in your case.
SELECT
Laufzettel.ANTRAGSNUMMER,
Laufzettel.Versicherungsnummer,
IIF(ISNULL(Laufzettel.EPolicierungVSL),1,0) AS dunkel
, Laufzettel.AEingangDatenstromZWorkflow
, Laufzettel.BEingangesigniertDokumentZWorkflow
, Laufzettel.CAusgangDatenstromZWorkflow
, Laufzettel.DAnlageSchwebeVSL
, Laufzettel.EPolicierungVSL
FROM Laufzettel;
Note: since your dunkle column can be calculated, you don't need the DP table. (or at least I don't see any need for it in your SQL)
Upvotes: 1
Reputation: 133360
could be using swithc
SELECT
Laufzettel.ANTRAGSNUMMER
, Laufzettel.Versicherungsnummer
Switch(
Not IsNull (Laufzettel.EPolicierungVSL), DP.DUNKEL
IsNull (Laufzettel.EPolicierungVSL), 0
) AS dunkel
, Laufzettel.AEingangDatenstromZWorkflow
, Laufzettel.BEingangesigniertDokumentZWorkflow
, Laufzettel.CAusgangDatenstromZWorkflow
, Laufzettel.DAnlageSchwebeVSL
, Laufzettel.EPolicierungVSL
FROM DP, Laufzettel;
Upvotes: 0