zhangjingqiang 2011-11-22 22:10
浏览 456
已采纳

如何按日期分段查询?

比如数据库中有三条数据,birthday(出生日期)分别为:
01/01/1980
12/12/1985
01/01/2001
(查询时可直接用年:1980,1985,2001)

现在想按四段查询得到这样形式的结果:
birthday
~1900
1901~1950
1951~2000
2001~

如上面的三条数据,结果应为:
birthday
1951~2000
2001~

※注意:因为“~1900”和“1901~1950”的数据没有,所以不显示。

怎么写SQL语句能达到这种效果呢?

  • 写回答

1条回答 默认 最新

  • yanjinke 2011-11-23 00:32
    关注

    按四段查询是4句SQL语句吗?我写个例子给你

    [code="java"]SELECT YEAR('1982-01-01')[/code] 这个语句就要查出年份来的; 例句如下
    [code="java"]
    SELECT CONCAT(MIN(YEAR(birthday)), '~',MAX(YEAR(birthday))) FROM tableName where YEAR(birthday) > 1951 and YEAR(YEAR)< 2001
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?