Hur skriver jag en SELECT sats som först ska hämta resultatet med "tiden" mellan 12.00 och 24.00 och sen med "tiden" mellan 00.00 och 12.00 ?
fråga om SELECT
3 svar · 186 visningar · startad av Virrdo
select * from t
order by case when hour(dateColumn) between 12 and 24 then 0 else 1 end
Jag kanske skulle ha varit litet mer specifiderad:
jag har en kolumn som heter "tid", jag använder mig alltså inte av någe av mysql's inbyggda tidsfunktioner.
Satserna jag använder nu ser ut
mysql_query("SELECT * FROM tabellen WHERE dag='$dag' HAVING tid >= 12.00 AND tid <= 24.00 ORDER BY tid ASC";
respektive
mysql_query("SELECT * FROM tabellen WHERE dag='$dag' HAVING tid >= 00.00 AND tid < 12.00 ORDER BY tid ASC")
min fråga är alltså hur jag ska gå till väga för att "slå ihop" de båda satserna så jag slipper onödig kod
mysql_query("SELECT * FROM tabellen WHERE dag='$dag' ORDER BY case when tid between 12.00 and 24.00 then 0 else 1 end")