Einzelnen Beitrag anzeigen

BlueStarHH

Registriert seit: 28. Mär 2005
Ort: Hamburg
849 Beiträge
 
Delphi 11 Alexandria
 
#1

SQL-Ausdruck gibt zu wenige DS zurück

  Alt 4. Mär 2017, 22:27
Datenbank: Firebird • Version: 2.5 • Zugriff über: IBDAC
Ich benötige aus der folgenden Tabelle alle Datensätze mit der UserID 1 und wenn es für NAME1 und NAME2 und keinen Datensatz mit der UserID 1 gibt, den zugehörigen Datensatz für die UserID 0.

Code:
TABLE WERTE
-----------------
PK   NAME1    VARCHAR(20) NOT NULL
PK   NAME2    VARCHAR(20) NOT NULL
PK   USERID  INTEGER NOT NULL
      WERT    VARCHAR(20)
Mein Versuch sieht so aus:

Code:
select * from WERTE
where (UserID = 1)
or (UserID = 0 and not exists(select WERT from WERTE where UserID = 1))
Da kommen dann aber nur die Datensätze mit UserID 1 zurück...
  Mit Zitat antworten Zitat