Problem mit Join

moondancer

Mitglied
Hallo,

ich versuche jetzt schon seit einiger Zeit folgendes Problem zu lösen und kriegs einfach nicht hin...
Ich habe 2 Tabellen.
Tabelle 1 heißt seiten und enthält als Spalten (SID, PID, URL) und
Tabelle 2 heißt tmp und enthält als Spalten (PID, IP, SID, timestamp)
Ich möchte nun aus "seiten" alle URL auslesen deren SID nicht in tmp vorkommt (ist für so ne Art Reloadsperre). Mein SQL-Statement lautet so:
Code:
SELECT s.URL FROM seiten s, tmp t WHERE s.SID <> t.SID
Mit dem Ergebnis dass ich 37x die URL's angezeigt bekomme obwohl in seiten nur 2 stehen. Mit
Code:
SELECT s.URL FROM seiten s, tmp t WHERE NOT (s.SID = t.SID)
hab ich auch keinen Erfolg..

Ich hab jetzt echt keine Idee mehr was falsch sein könnte, wäre klasse wenn jemand einen Tipp hätte...

Viele Grüße
Christian.
 
Tatsache jetzt scheint es zu funktionieren.. Komisch dass er vorher so viele Ergebnisse angezeigt hat obwohl jede URL nur 1x in seiten vorkommt...

Dankeschööön.

Christian
 
mmh zu früh gefreut. Es geht doch nicht. Mir ist noch etwas aufgefallen: Wenn tmp komplett leer ist heißt das für mich das keine Beschränkungen bestehen und das jede URL aus "seiten" anzeigbar ist. Die obige Abfrage liefert mir aber kein Ergebnis... Also genau umgekehrt.

Christian
 
nochmal ein Nachtrag: ich habe herausgefunden das scheinbar immer nur die erste Zeile aus tmp betrachtet wird. Setze ich hier die SID einer URL ein so wird die URL nicht ausgegeben.
Jetzt weiß ich echt nicht weiter...
 
Hallo,


probiere das doch mal aus:

SELECT s.URL FROM seiten s
where s.SID not in (select t.sid from temp)

Grüße aus Hamburg
Movera (falls jemand einen Job für mich hat - bitte melden)
 
Zurück