Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL-Abfrage – Datumsbereich innerhalb eines Datumsbereichs

Wenn Ihre products ein start_date haben und ein end_date und Ihre Abfrage hat ein qstart_date und ein qend_date , dann wollen wir die Anzahl der Tage zwischen:

GREATEST(start_date, qstart_date)

und

LEAST(end_date,qend_date)

. In MySQL sieht das meiner Meinung nach so aus

1 + DATEDIFF ( 'd' , GREATEST(start_date, qstart_date) , LEAST(end_date,qend_date) ) 

Und Sie sollten negative Zahlen ignorieren und durch "0" ersetzen.