Ermitteln von !Schnittmenge aus zwei Tabellen

Ermitteln von !Schnittmenge aus zwei Tabellen

am 08.02.2006 15:01:41 von Heiko Bohn

Hallo,

ich stehe gerade auf dem Schlauch, dabei habe ich etwas voellig Triviales
vor:

Aus zwei Tabellen A und B moechte ich die Datensaetze aus A ermitteln, die
keine Relation zu B haben.

Die Schnittmenge daraus zu ermitteln ist simpel
("SELECT * FROM a,b WHERE a.id = b.id"). Aber bekanntlich kann man
(jedenfalls kenne ich das so, als Nicht-Mathe-Genie) injektive Abbildungen
nicht einfach umkehren und daher komme ich nicht auf eine Loesung des
Problems... Hat jemand eine Idee, die er/sie mit mir teilen moechte? :)

--
MfG
Heiko

Re: Ermitteln von !Schnittmenge aus zwei Tabellen

am 08.02.2006 15:10:35 von Dominik Echterbruch

Heiko Bohn wrote:
>
> ich stehe gerade auf dem Schlauch, dabei habe ich etwas voellig Triviales
> vor:
> Aus zwei Tabellen A und B moechte ich die Datensaetze aus A ermitteln, die
> keine Relation zu B haben.

Nicht, daß das nicht schon ungefähr 12652741 Mal hier diskutiert worden
wäre...

> Die Schnittmenge daraus zu ermitteln ist simpel
> ("SELECT * FROM a,b WHERE a.id = b.id"). Aber bekanntlich kann man
> (jedenfalls kenne ich das so, als Nicht-Mathe-Genie) injektive Abbildungen
> nicht einfach umkehren und daher komme ich nicht auf eine Loesung des
> Problems... Hat jemand eine Idee, die er/sie mit mir teilen moechte? :)

SELECT a.*
FROM a
LEFT JOIN b ON b.id = a.id
WHERE b.id IS NULL


Grüße,
Dominik
--
MonstersGame - Die Schlacht zwischen Vampiren und Werwölfen
http://spielwelt6.monstersgame.net/?ac=vid&vid=3018786

Re: Ermitteln von !Schnittmenge aus zwei Tabellen

am 08.02.2006 15:15:11 von Dirk Brosowski

Heiko Bohn schrieb:
> Hallo,
>
> ich stehe gerade auf dem Schlauch, dabei habe ich etwas voellig Triviales
> vor:
>
> Aus zwei Tabellen A und B moechte ich die Datensaetze aus A ermitteln, die
> keine Relation zu B haben.
>
> Die Schnittmenge daraus zu ermitteln ist simpel
> ("SELECT * FROM a,b WHERE a.id = b.id"). Aber bekanntlich kann man
> (jedenfalls kenne ich das so, als Nicht-Mathe-Genie) injektive Abbildungen
> nicht einfach umkehren und daher komme ich nicht auf eine Loesung des
> Problems... Hat jemand eine Idee, die er/sie mit mir teilen moechte? :)
>

Schau mal in der Doku nach Outer Join, der müsste dir eigentlich
weiterhelfen.

Grüße

Dirk

Re: Ermitteln von !Schnittmenge aus zwei Tabellen

am 08.02.2006 15:21:02 von Andreas Kretschmer

Andreas
--
Andreas Kretschmer
Linux - weil ich es mir wert bin!
GnuPG-ID 0x3FFF606C http://wwwkeys.de.pgp.net

Re: Ermitteln von !Schnittmenge aus zwei Tabellen

am 08.02.2006 15:24:06 von Heiko Bohn

Dominik Echterbruch wrote:

> Heiko Bohn wrote:
>>
>> ich stehe gerade auf dem Schlauch, dabei habe ich etwas voellig Triviales
>> vor:
>> Aus zwei Tabellen A und B moechte ich die Datensaetze aus A ermitteln,
>> die keine Relation zu B haben.
>
> Nicht, daß das nicht schon ungefähr 12652741 Mal hier diskutiert worden
> wäre...

Wie es sich gehoert hatte ich bereits in der Gruppen-FAQ gesucht. Wenn die
Frage so haeufig gestellt wird, haette man Frage und Antwort ja schon dort
aufnehmen koennen.

> SELECT a.*
> FROM a
> LEFT JOIN b ON b.id = a.id
> WHERE b.id IS NULL

Vielen Dank. Habs ja geahnt, dass es simpel sein muss.

--
MfG
Heiko

Re: Ermitteln von !Schnittmenge aus zwei Tabellen

am 08.02.2006 15:34:57 von Dirk Brosowski

Dirk Brosowski schrieb:
> Heiko Bohn schrieb:
>
>> Hallo,
>>
>> ich stehe gerade auf dem Schlauch, dabei habe ich etwas voellig Triviales
>> vor:
>>
>> Aus zwei Tabellen A und B moechte ich die Datensaetze aus A ermitteln,
>> die
>> keine Relation zu B haben.
>> Die Schnittmenge daraus zu ermitteln ist simpel ("SELECT * FROM a,b
>> WHERE a.id = b.id"). Aber bekanntlich kann man
>> (jedenfalls kenne ich das so, als Nicht-Mathe-Genie) injektive
>> Abbildungen
>> nicht einfach umkehren und daher komme ich nicht auf eine Loesung des
>> Problems... Hat jemand eine Idee, die er/sie mit mir teilen moechte? :)

Wieso sehe ich jetzt die Originalmessage nicht mehr? Ist die
zurückgerufen worden? Oder spinnt mein Thunderbird?

Grüße

Dirk

Re: Ermitteln von !Schnittmenge aus zwei Tabellen

am 08.02.2006 15:36:46 von Christian Kirsch

Dirk Brosowski schrieb:

> Wieso sehe ich jetzt die Originalmessage nicht mehr? Ist die
> zurückgerufen worden? Oder spinnt mein Thunderbird?
>
letzteres, vermutlich. Ich sehe das Original noch

Re: Ermitteln von !Schnittmenge aus zwei Tabellen

am 08.02.2006 22:44:43 von Markus Mann

Heiko Bohn wrote:
>
> Wie es sich gehoert hatte ich bereits in der Gruppen-FAQ gesucht. Wenn die
> Frage so haeufig gestellt wird, haette man Frage und Antwort ja schon dort
> aufnehmen koennen.

Die FAQ ist seit langem ungepflegt. Das Handbuch zu MySQL ist einfach zu
perfekt, um nochmals alles wiederzukäuen. Trotzdem schön zu lesen, dass
es noch Leute gibt, die vor dem Fragen noch versuchen selbst etwas
herauszufinden.

Ciao.
--
Markus Mann
];-)