Voor mijn website ben ik bezig met een scriptje. Het wil aardig lukken maar ik loop tegen een probleem aan.
Mijn gegevens wil ik graag sorteren op tijd. Dat wil zeggen ik heb een"tijd tabel" in mijn database en ik wil graag dat er gekeken wordt naar " date("Hi") en dan de eerst volgende waarde boven aan zet.
Iemand een idee?
Hoe heb je de verschillende dagen dan opgeslagen in je tabel? Ik krijg het vermoeden dat je geen gebruik maakt van een DATETIME veld, maar eerder van een apart TIME en DATE veld.
Gebruik DATETIME om een datumtijd-stempel in op te slaan en gebruik in je query:
Ja ok, maar hoe bepaal jij dan wat de volgende dag is? Als je alleen een kolom van het type TIME hebt, heb je dus totaal geen relatie naar een bepaalde dag.
Of, nu ik je vraag anders lees: wil je soms weer dezelfde tijdstippen gebruiken voor 'de volgende dag'? Dan zul je 2 queries moeten gebruiken.
edit:
SELECT kolom FROM tabel WHERE tijd > NOW()
UNION
SELECT kolom FROM tabel WHERE tijd < NOW()
Dit werkt maar is niet echt een nette oplossing. Je hebt namelijk geen invloed meer op het sorteren van de resultaten. In deze query kun je namelijk nog steeds maar 1 ORDER BY clausule opnemen. En zodra je dat doet, komt de kleinste tijd gewoon weer bovenaan te staan.