Mega Code Archive

 
Categories / MySQL / Math
 

Using LPAD( ) was shown for making sure the month values have two digits

mysql> mysql> CREATE TABLE date_val     -> (     ->  d       DATE     -> ); Query OK, 0 rows affected (0.00 sec) mysql> mysql> INSERT INTO date_val (d) VALUES('1864-02-28'); Query OK, 1 row affected (0.00 sec) mysql> INSERT INTO date_val (d) VALUES('1900-01-15'); Query OK, 1 row affected (0.00 sec) mysql> INSERT INTO date_val (d) VALUES('1987-03-05'); Query OK, 1 row affected (0.00 sec) mysql> INSERT INTO date_val (d) VALUES('1999-12-31'); Query OK, 1 row affected (0.00 sec) mysql> INSERT INTO date_val (d) VALUES('2000-06-04'); Query OK, 1 row affected (0.00 sec) mysql> mysql> mysql> SELECT d, CONCAT(YEAR(d),'-',LPAD(MONTH(d),2,'0'),'-01') FROM date_val; +------------+------------------------------------------------+ | d          | CONCAT(YEAR(d),'-',LPAD(MONTH(d),2,'0'),'-01') | +------------+------------------------------------------------+ | 1864-02-28 | 1864-02-01                                     | | 1900-01-15 | 1900-01-01                                     | | 1987-03-05 | 1987-03-01                                     | | 1999-12-31 | 1999-12-01                                     | | 2000-06-04 | 2000-06-01                                     | +------------+------------------------------------------------+ 5 rows in set (0.00 sec) mysql> mysql> mysql> drop table date_val; Query OK, 0 rows affected (0.00 sec)