Mysql
 sql >> Database >  >> RDS >> Mysql

mysql:controlla l'intervallo di date

Abbandona questa struttura e usa i campi data nativi:

id start_date  end_date
1  2012-12-22  2013-1-25

quindi puoi utilizzare funzioni e confronti di data/ora di mysql nativi, ad es.

SELECT id WHERE yourdate BETWEEN start_date AND end_date

invece di dover utilizzare confronti multilivello orribilmente brutti per confrontare correttamente tali valori frammentati:

SELECT id where YEAR(yourdate) < startYear OR (YEAR(yourdate) > startYear AND MONTH(yourdate) < startMOnth) etc... etc....etc..