title image


Smiley Re: Performanceprobleme beim Abfragen
SELECT adressen.id

FROM strassen, adressen WHERE strassen.nr <> adressen.nr



Stell dir mal vor, die Tabellen sehen so aus:

adressen(id, nr) = {(1,1), (2,2), (3,3)}

strassen(name, nr) ={(einsstr, 1), (zweistr, 2)}



Dein erster SELECT (hier SELECT *) mit = gibt:

1, 1, einsstr, 1

2, 2, zweistr, 2



Dein zweiter SELECT mit <> gäbe:

1, 1, zweistr, 2

2, 2, einsstr, 1

3, 3, einsstr, 1

3, 3, zweistr, 2



Denn adressen.nr wäre hier immer ungleich strassen.nr.



Du willst aber wohl nur die (3, 3) haben.



Also:

SELECT adressen.id

FROM adressen a

LEFT JOIN strassen s ON a.nr = s.nr

WHERE s.nr IS NULL;



Warum steht hier: , dort unter Einfache SQL-Abfragen - Wie kann man Tabellen joinen, wie zeigt man Datensätze ohne Pendant dennoch an?



Gruß

Saluk







diu vive floreque.
Spockus

erreicht am 04.03.2008 09:47:23

geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: