2 Bedingungen in einer Spalte

Hallo zusammen,

hab ein Problem ein Select zu basteln was mir folgende Ergebnisse geben soll.

Ich hab für ein Kunden Max 3 Zeilen in einer DB. Die 3 Zeilen unterscheiden sich in einer Spalte KZR, dort können die Werte 01,02 und 03 vorkommen. Nun will ich nur die Zeilen von 03, wenn es keine weitere Zeile mit 01 oder 02 vom Kunden gibt.

Ich hoffe das ist verständlich und könnt mir helfen.

Danke und Gruß

Hi,

Ich hab für ein Kunden Max 3 Zeilen in einer DB. Die 3 Zeilen
unterscheiden sich in einer Spalte KZR, dort können die Werte
01,02 und 03 vorkommen. Nun will ich nur die Zeilen von 03,
wenn es keine weitere Zeile mit 01 oder 02 vom Kunden gibt.

ganz einfach:

SELECT 
 \* 
FROM 
 Kunden 
WHERE 
 KRZ LIKE '03' 
AND
 Kunden\_ID NOT IN (SELECT Kunden\_ID FROM Kunden WHERE KRZ NOT LIKE '03')

Grüße
m4tt3n

Ich würde nun noch das LIKE durch ein „=“ ersetzten…

Gruss

Danke :smile:

Klar ist das einfach, wenn ich damit jeden Tag arbeiten würde. Aber das ist doch eher selten. :smile:

Ich würde nun noch das LIKE durch ein „=“ ersetzten…

Kann man, und das NOT LIKE durch „“.
Aber solange kein Platzhalter ("%") verwendet wird, ist es dem SQL-Server völlig egal, ob da LIKE oder = steht…
(Zumindest bei MS SQL)

Grüße
m4tt3n

Hi!

Aber solange kein Platzhalter ("%") verwendet wird, ist es dem
SQL-Server völlig egal, ob da LIKE oder = steht…
(Zumindest bei MS SQL)

Hab ich den SQL-Server irgendwo überlesen??

Ich mach’s mal mit Oracle und minus:

select feld1,feld2,feld3 from KUNDEN
 where KPZ = '03'
minus
select feld1,feld2,feld3 from KUNDEN
 where KPZ in ('01','02');

Funktioniert natürlich nur, wenn das Feld KPZ nicht mitselektiert wird …

Grüße,
Tomh

Hi

Hab ich den SQL-Server irgendwo überlesen??

Ich ging einfach mal von einem MS-SQL oder mySQL Server aus :smile:

Ich mach’s mal mit Oracle und minus:

select
feld1,feld2,feld3 from KUNDEN
where KPZ = ‚03‘
minus
select feld1,feld2,feld3 from KUNDEN
where KPZ in (‚01‘,‚02‘);

Gibt es in Oracle keine Unterstützung für Subqueries?

Grüße
m4tt3n