Page 1 of 1

DATE_* und Index-Verwendung

Posted: 2008-10-26 20:25
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

Re: DATE_* und Index-Verwendung

Posted: 2008-10-26 20:51
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+fun ... ased+index.

Re: DATE_* und Index-Verwendung

Posted: 2008-11-18 14:22
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