phpbar.de logo

Mailinglisten-Archive

[php] Re: MySql Abfrage

[php] Re: MySql Abfrage

Reinhold Riedersberger php_(at)_phpcenter.de
Sat, 13 Jul 2002 00:27:33 +0200


Hallo Mathias,

am Freitag, 12. Juli 2002 um 17:29 schrieben Sie:

>> Ich habe Probleme mit der folgenden Abfrage, bei der "Auslaufdatum"
>> und "Benachrichtigungsdatum" MySql Datumsfelder sind.
>>
> Ah, und welche Probleme hast du genau?
Eigentlich nur eine - Sie funktioniert nicht.

>> $res = mysql_db_query($dbDatabase, "select * from h_firmenstamm where
>> strtotime(Auslaufdatum)-20*86400) < time() &&
>> empty(Benachrichtigungsdatum)");
>>
> Das Query ist nicht sonderlich performant, da
> für jede Zeile der Datenbank die Funktion
> strtotime ausgeführt werden muß.
Danke für den Hinweis, den ich im Hinterkopf behalten werde.

> Davon abgesehen daß:

> Note: This function has been deprecated since PHP 4.0.6. Do not use this
> function. Use mysql_select_db()  and mysql_query() instead.
Hoops, war mir nicht bekannt. Woher bekommt man solche Infos, wenn
nicht von Dir?

> Außerdem find ich in der mysql-Doku keine funktion time() und strtotime und
> vermutlich
> wird die auch nciht mit einem Datumsfeld kompatibel sein.
Handelt sich eigentlich mehr um php-Funktionen. Und mit dem Einbinden
derselben habe ich so meine Probleme.

> Schau erst mal in
> http://www.mysql.com/documentation/mysql/bychapter/manual_Reference.html#Dat
> e_and_time_functions
Vielen Dank für den Hinweis. Habe ich soeben gemacht. Und es sieht
ganz so aus als sei bereits das Beispiel dort die von mir gesuchte
Lösung.

> Sinnvoller wäre ein Query in der Art (wenn z.b. 1 Tag abgezogen werden soll

> .... where (auslaufdatum) < DATE_ADD(CURDATE(), INTERVAL 1 DAY)

> Mysql ist nämlich hinreichend intelligent, festzustellen, daß dann
> der rechte Teil des Vergleiches konstant ist, und merkt sich das
> bei den ganzen Vergleichen.

> Grüße, Mathias

Vielen Dank für Deine hilfreiche Unterstützung.
Du machst Dir kein Bild wie viel (kostbare Lebens)Zeit man mit solch kleinen Problemen
verbringen kann, wenn man nicht weiß (wußte) wo man nachschlagen muß.

-- 
Mit freundlichen Grüssen
Reinhold Riedersberger


php::bar PHP Wiki   -   Listenarchive