Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

mysql:verifique o intervalo de datas


Abandone essa estrutura e use campos de data nativos:
id start_date  end_date
1  2012-12-22  2013-1-25

então você pode usar funções e comparações de data/hora nativas do mysql, por exemplo
SELECT id WHERE yourdate BETWEEN start_date AND end_date

em vez de ter que usar comparações de vários níveis horrivelmente feias para comparar adequadamente esses valores fragmentados:
SELECT id where YEAR(yourdate) < startYear OR (YEAR(yourdate) > startYear AND MONTH(yourdate) < startMOnth) etc... etc....etc..