[DB] MySQL4 naar MysQL3

Pagina: 1
Acties:

  • Bender
  • Registratie: Augustus 2000
  • Laatst online: 08-05 11:15
Ik ben lekker slim bezig geweest..
Ik heb wat bestanden met wat queries, werkt allemaal netjes op een server (MySQL4)..
Maar uiteindelijk komt het te draaien op een MySQL3 server.

Dat MySQL3 ontzettend veel functies niet heeft die 4 wel heeft wist ik, maar wist niet dat het zo ver ging.

Het probleem is nu DATEDIFF, dit kent MySQL3 niet :'(
Is er toevallig een nette workaround voor DATEDIFF om het goed werkend te krijgen?

Het gaat om dit stukje:
code:
1
DATEDIFF(CURDATE(),DATE_ADD(pay.date_till, INTERVAL -14 DAY))

  • Bender
  • Registratie: Augustus 2000
  • Laatst online: 08-05 11:15
Ik geloof dat ik het al heb opgelost :+
code:
1
(UNIX_TIMESTAMP(pay.date_till) - UNIX_TIMESTAMP()) >= 0

  • |orion
  • Registratie: Juli 2002
  • Laatst online: 16-04 15:16
Mijn ervaring is dat de MySQL 3.28 server op m'n stage dingen zoals de berekening van die timestamp niet onthoud. Als ik dan een query over 400.000 records trek (dan moet ik de datum nog opbouwen uit een jaar, maand en dag en dat omtoveren naar een timestamp) dan ben ik ongeveer 6 seconden bezig. Als ik dan de timestamps in PHP laat berekenen (en dus niet voor elk record opnieuw) en in de query laat zetten als getal scheelt me dat 2 seconden.

Ik weet niet hoeveel records jij zou moeten gaan queryen, maar dit kan tijd schelen, het kan natuurlijk zijn dat die stageserver brak geconfigged is.

  • Bender
  • Registratie: Augustus 2000
  • Laatst online: 08-05 11:15
Het script zal iedere nacht draaien (maintenance), maar het aantal zal meevallen... Ik verwacht er niet meer dan 1000 :)