Klaus: Subselect als Join

Beitrag lesen

Danke für deine Antwort Vinzenz! Ich habe das gleich mal ausprobiert. Die Anzahl an Ergebnissen zwischen den beiden Möglichkeiten ist jedoch unterschiedlich:

Meine Variante

SELECT count(id) as anzahl  
FROM results r1  
WHERE scan_id <= 4 AND ip = '3568098565' AND p_id NOT IN  
 ( SELECT r2.p_id FROM results r2 WHERE scan_id <= 4 AND ip != '3568098565' AND scan_id > r1.scan_id)  
LIMIT 1;

--> 1524 Ergebnisse

Deine Variante

SELECT  
    r1.id  
FROM  
    results r1  
INNER JOIN  
    results r2  
ON  
    r1.p_id = r2.p_id  
WHERE  
    r1.scan_id <= 4 AND r1.ip = '3568098565' AND  
    NOT ( r2.scan_id <= 4 AND  r2.ip != '3568098565' AND r2.scan_id > r1.scan_id );

--> 1525 Ergebnisse

Hast du noch eine Idee?

Danke und Grüße

Klaus