DATE_* und Index-Verwendung

Anonymous

DATE_* und Index-Verwendung

Post by Anonymous »

Guten Abend :)

Ich habe eine kleine Frage zu einem MySQL-Query.
Und zwar zeigen mir die Logs, dass folgender Query keine Indexis verwendet:

SELECT count(*) FROM `members_lastlogin` WHERE DATE_ADD( lastlogin, INTERVAL 5 MINUTE) > NOW()


gibt es eine Möglichkeit diese Abfrage zu optimieren?

Liebe Grüße
Top

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: DATE_* und Index-Verwendung

Post by Roger Wilco »

Durch die Nutzung der Funktion DATE_ADD (Hint @matzewe01 ;)) wird eine Nutzung des Index verhindert, siehe u. a. http://www.google.de/search?q=mysql+function-based+index.
Top

User avatar
isotopp
RSAC
Posts: 482
Joined: 2003-08-21 10:21
Location: Berlin

Re: DATE_* und Index-Verwendung

Post by isotopp »

matzewe01 wrote:Im Prinzip:

SELECT count(*) FROM `members_lastlogin` WHERE DATE_ADD > (NOW() - INTERVALL 5 MINUTE)


SELECT count(*) FROM `members_lastlogin` WHERE lastlogin < now() - INTERVAL 5 MINUTE
Top