Tob: Zu langsame Abfrage

Beitrag lesen

Hi,

In meinem mysql-slowquery log taucht eine Abfrage auf, die mir die nächste freie Kundennummer raussuchen soll. Der Bereich ist zwischen 10000 und 70000 abgesteckt.

  
SELECT MIN( Kundennummer )  
FROM kunden t1  
WHERE NOT  
EXISTS (  
SELECT Kundennummer  
FROM kunden t2  
WHERE t2.Kundennummer = t1.Kundennummer +1  
)  
AND  
t1.Kundennummer > 10000 AND  
t1.Kundennummer < 70000;  

Kann man die optimieren, bzw. manchmal habe ich sogar den Eindruck, sie macht gar nicht, was sie soll. D.H. sucht sie mir so wirklich den nächsten freien Kundennummernplatz oder habe ich mich da völlig verstrickt?

Freundliche Grüße

Tobias