Unterstützt die ODBC-Schnittstelle für MS Access die CASE WHEN-Klausel?
Beim Versuch, über ODBC eine Verbindung zu MS Access herzustellen, ist ein Fehler aufgetreten Ausnahme beim Ausführen einer Abfrage unter Verwendung der CASE WHEN-Klausel. Diese Ausnahme wirft die Frage auf: Unterstützt ODBC diese Klausel für MS Access?
Verstehen des Kompatibilitätsproblems
Trotz der Unterstützung von Vergleichsoperatoren in SELECT-Klauseln tut MS Access dies unterstützen die CASE WHEN-Klausel nicht nativ. Um diese Einschränkung zu beheben, bietet ODBC jedoch einen Workaround-Mechanismus.
Alternativer Ansatz für MS Access
Um die gewünschte Funktionalität in MS Access über ODBC zu erreichen, sollten Sie den Einsatz von in Erwägung ziehen switch()-Funktion. Mit der Funktion switch() können Sie mehrere Bedingungen auswerten und entsprechende Werte zurückgeben:
select switch( age > 40, 4, age > 25, 3, age > 20, 2, age > 10, 1, true, 0 ) from demo
Jede Bedingung wird nacheinander ausgewertet, und wenn sie den Schwellenwert erreicht, wird der entsprechende Wert zurückgegeben. Der letzte Fall, true, fungiert standardmäßig und behandelt Situationen, in denen keine der anderen Bedingungen erfüllt ist.
Das obige ist der detaillierte Inhalt vonUnterstützt MS Access ODBC die CASE WHEN-Klausel?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!