Mega Code Archive

 
Categories / MySQL / Date Time
 

Calculation on Date data type

/* mysql> select * from Bird; +----------+-------+---------+------+------------+------------+ | name     | owner | species | sex  | birth      | death      | +----------+-------+---------+------+------------+------------+ | BlueBird | Joe   | Car     | f    | 1999-03-30 | NULL       | | RedBird  | Yin   | Bus     | m    | 1979-04-30 | 0000-00-00 | | RedBird  | Yin   | Bus     | m    | 1998-01-30 | NULL       | +----------+-------+---------+------+------------+------------+ 3 rows in set (0.00 sec) mysql> SELECT name, birth FROM Bird     -> WHERE MONTH(birth) = MOD(MONTH(CURDATE()), 12) + 1; Empty set (0.00 sec) */   Drop table Bird; CREATE TABLE Bird (     name VARCHAR(20),      owner VARCHAR(20),     species VARCHAR(20),      sex CHAR(1),      birth DATE,      death DATE );    INSERT INTO  Bird VALUES ('BlueBird','Joe','Car','f','1999-03-30',NULL); INSERT INTO  Bird VALUES ('RedBird','Yin','Bus','m','1979-04-30',1998-01-30); INSERT INTO  Bird VALUES ('RedBird','Yin','Bus','m','1998-01-30',NULL);    select * from Bird; SELECT name, birth FROM Bird WHERE MONTH(birth) = MOD(MONTH(CURDATE()), 12) + 1;