关于把日期类型数据分成年和月两个字段存储
coder 2010-06-10 11:46:37 test : 地区 年份 月份 同比增长(%) 累计同比增长(%)
为什么不采用日期类型字段
以前做东西的时候,做过统计到某年某月的数据,生成某年某月到某年某月的报表,查询条件写起来不是很麻烦。
但是获取查询数据的的条件信息时,总是要拆分截取日期,进行日期转换,一直被困扰关于日期格式转换。
例如我要录入2009年1月份的信息,2010年2月份的信息,等等。放到数据库的日期类型的字段就不好写。
(注意:可能采用字符类型代替但是感觉怪怪的。)
由于不具体到天,
所以大胆的把数据中日期字段给分成年和月两个字段,这样从心里上感觉还行,就是有点别扭,而且写查询条件的时候不是很符合常规。但是能实现自己的功能。
查询从某年某月到某年某月的信息
select * from `test`
where
(`year` between '2011'+0 and '2012'+0 )
and
`month` between '2'+0 and '8'+0
查询从某年到某年的信息
select * from `test`
where
year` between '2011'+0 and '2012'+0
(这种写法限于mysql)
咨询一下:
大家如何处理这种情况的?一起讨论一下。等待中。。。。学习中。。。。