MySQLのSQL文だけでカレンダーを作ることが出来ます。
例えば、2017年10月のカレンダーをつくるなら、
SELECT
@f := DATE_FORMAT(CURDATE(), "2017-10-01") AS day
UNION ALL
SELECT
@f := date_format(date_add(@f, interval 1 day), "%Y-%m-%d") AS day
FROM
`information_schema`.COLUMNS
WHERE
@f < LAST_DAY(DATE_FORMAT(CURDATE(), "2017-10-01"))
のようになります。
同様に、2018年1月のカレンダーを作りたいなら、
SELECT
@f := DATE_FORMAT(CURDATE(), "2018-01-01") AS day
UNION ALL
SELECT
@f := date_format(date_add(@f, interval 1 day), "%Y-%m-%d") AS day
FROM
`information_schema`.COLUMNS
WHERE
@f < LAST_DAY(DATE_FORMAT(CURDATE(), "2018-01-01"))
のような形になります。
この記事を書いた人
Nな人(えぬなひと)。
Nは本名から取っています。
Laravelが大好きなPHPerで、WEBを作るときはLaravelを技術スタックに絶対推すマン。
PHP、Pythonと、昔はperlを書いていたP言語エンジニア。
最近はNimを書いたりしています。
Nは本名から取っています。
Laravelが大好きなPHPerで、WEBを作るときはLaravelを技術スタックに絶対推すマン。
PHP、Pythonと、昔はperlを書いていたP言語エンジニア。
最近はNimを書いたりしています。