webForumDet fria alternativet

SELECT

5 svar · 365 visningar · startad av westman

westmanMedlem sedan aug. 2004279 inlägg
#1

Jag vill hämta ut data ifrån en tabell där datumet inte är passerat.

Skriver jag så här...

$sql = "SELECT * FROM boka WHERE user='".$_SESSION['sess_user']."' AND year >= $CurrentYear AND month >= $CurrentMonth AND day >= $CurrentDay ORDER BY month ASC, day ASC LIMIT 20";

...så blir det ju fel.
Den ska alltså hämta posterna tillhörande en viss användare vars år är det samma eller senare och i andra hand månaden är den samma eller senare och i tredje hand dagen är den samma eller senare.
Ngn som förstår hur jag menar? :)

westmanMedlem sedan aug. 2004279 inlägg
#2

Ingen som vet...?

LarsGMedlem sedan dec. 200012 465 inlägg
#3

Använd en datetime kolumn.

(

$sql = "SELECT * FROM boka 
WHERE user='".$_SESSION['sess_user']."' 
AND ((year > $currentYear) 
or (year = $CurrentYear AND month > $CurrentMonth) 
or (year = $CurrentYear and month = $CurrentMonth and day >= $CurrentDay))
 ORDER BY year asc, month ASC, day ASC 
LIMIT 20";

)

westmanMedlem sedan aug. 2004279 inlägg
#4

Tack det fungerade bra! Men nu har jag fått hjärnsläpp.. Hur gör jag ifall jag även vill ta hänsyn till tiden (i databasen heter kolumnen "tid")??

westmanMedlem sedan aug. 2004279 inlägg
#5

bjuder även in andra än LarsG till denna tråd... ;)

LarsGMedlem sedan dec. 200012 465 inlägg
#6
$sql = "SELECT * FROM boka 
WHERE user='".$_SESSION['sess_user']."' 
AND ((year > $currentYear) 
or (year = $CurrentYear AND month > $CurrentMonth) 
or (year = $CurrentYear and month = $CurrentMonth and day > $CurrentDay)
or (year = $CurrentYear and month = $CurrentMonth and day = $CurrentDay and tid >= $currentTime)
 ORDER BY year asc, month ASC, day ASC 
LIMIT 20";
Genererad på 364 ms · cache AV · v20260730165559-full.f96bc7eb