sql >> Databasteknik >  >> RDS >> Mysql

SQL datumintervall fråga

Om jag förstår frågan rätt, med [:start, :end] eftersom ditt datumintervall av intresse letar du efter:

select *
 from event
where -- event started earlier, ends later
      start <= :start and :start <= end
   or -- event starts during [:start, :end]
      :start <= start and start <= :end
   or -- event ends during [:start, :end]  
      :start <= end and end <= :end;

Om du letar efter en viss :day , använd :day som :start och :day + 1 day som :end .



  1. Använder GROUP_CONCAT på underfråga i MySQL

  2. Python MySQL fel arkitekturfel

  3. MySQL:KRÄV SSL visas inte i anslag

  4. Knee-Jerk Wait Statistik :PAGELATCH