sql >> Database >  >> RDS >> Mysql

Omgaan met tijden en na middernacht

Minuten opslaan (int(4) unsigned) is de juiste keuze.
In plaats van de weekdag + openingsuur, sluitingsuur (met offset) op te slaan,
moet u de minuut echter opslaan sinds maandag 12.00 uur :-

 Monday  18:00 = (1 - 1)*60 * 18 = 1080
 Tuesday 02:00 = (2 - 1)*60 * 24 + (2 * 60) = 1560
 ...
 // please take note shop could have different operating hour for each day

De huidige tijd is dus dinsdag 01:30 uur, dat is:-

 // mysql expression
 $expr = (weekday(current_timestamp)+1) * 1440 + (hour(current_timestamp)*60) + minute(current_timestamp)

De SQL:-

 select ... 
 from opening_hours
 where
 open_time  >= $expr and
 close_time <= $expr;


  1. Hoe PostgreSQL te monitoren met Nagios

  2. Best practices voor het optimaliseren van LAMP-sites voor snelheid?

  3. BOB met INSERT INTO via voorbereide verklaringen

  4. 3 manieren om de naam van de maand uit een datum te halen in SQL Server (T-SQL)