webForumDet fria alternativet

riktigt krånglig med datum

Databaser & SQL

3 svar · 195 visningar · startad av Smultron

Medlem sedan juli 2002423 inlägg
Frågan#1

Jag har en databas där ett fält har ett datum, som en sträng..("dd-mm-åååå")

nu vill jag att den plockar de 5 första i databasen, men med de 5 första ska det räknas via datum...

alltså inte de 5 första som satts in i databasen utan de 5 tidigaste från dagens datum har försökt lite såhär

SELECT * FROM events WHERE user= '".$id."' && start_date >= '".$date."' && type='test' order by start_date asc LIMIT 5

men dte blir inte rätt dessutom så sorterar den inte rätt...

plis hjälp mig lite här...

Medlem sedan mars 20032 667 inlägg
#2

Hej,

Har du datumfältet som texttyp kommer du inte få den att sortera rätt. Byt datatyp på kolumnen till date eller datetime.

Medlem sedan juli 2002423 inlägg
#3

ok, det ska jag testa du, thx, men kan jag jämföra den med en sträng sen ändå eller?

Medlem sedan mars 20032 667 inlägg
#4

Ja, du kan jämföra värdena sedan ändå så länge de är kontruerade på ett jämförbart sätt. Använder du VB-script kan det hända att du får köra funktionen cDate() på strängen i jämförelsen. Du kan typkonvertera i de andra scriptspråken också.

264 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)