我做了一些报告,我想在特定月份的所有日期,例如2014年1月,当我做这个“SQL”:MySQL的获取在一个月中日期的列表,一年
SELECT datesInMonth WHERE month = 1 AND year = 2014;
我想这个名单:如果我这样做 'SQL'
2014-01-01
2014-01-02
2014-01-03
...
2014-01-31
:
SELECT datesInMonth WHERE month = 2 AND year = 2014;
我想这个名单:
2014-02-01
2014-02-02
2014-02-03
...
2014-02-28
如果我这样做“SQL”:
SELECT datesInMonth WHERE month = 2 AND year = 2016;
我想这个名单:
2016-02-01
2016-02-02
2016-02-03
...
2016-02-29
这是可能的,或者我应该做我自己的表与所选日期未来100年:)
有一个聪明的技巧,你可以做使用UNION,或者您可以在应用程序级别处理业务逻辑。但是你的其他想法也可以。日历甚至在未来1000年的日历表将很小。 – Strawberry
是的,它会解决我未来100年的问题,但我想要一个更好的解决方案,如果存在。 – AdrianES
您可能需要一个像这样的程序。它创建一个表,但你可能会返回一个结果集 - http://schimpf.es/generate-a-list-between-two-dates-in-mysql/ – Shiva