/* 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 | NULL | | RedBird | Yin | Bus | m | 1998-01-30 | NULL | +----------+-------+---------+------+------------+-------+ 3 rows in set (0.00 sec)
mysql> /*how old each a Bird is*/ mysql> SELECT name, birth, CURDATE(), -> (YEAR(CURDATE())-YEAR(birth)) -> - (RIGHT(CURDATE(),5)<RIGHT(birth,5)) -> AS age -> FROM Bird; +----------+------------+------------+------+ | name | birth | CURDATE() | age | +----------+------------+------------+------+ | BlueBird | 1999-03-30 | 2005-10-11 | 6 | | RedBird | 1979-04-30 | 2005-10-11 | 26 | | RedBird | 1998-01-30 | 2005-10-11 | 7 | +----------+------------+------------+------+ 3 rows in set (0.01 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',NULL); INSERT INTO Bird VALUES ('RedBird','Yin','Bus','m','1998-01-30',NULL); select * from Bird;
/*how old each a Bird is*/
SELECT name, birth, CURDATE(), (YEAR(CURDATE())-YEAR(birth)) - (RIGHT(CURDATE(),5)<RIGHT(birth,5)) AS age FROM Bird;
|