【问题标题】:Displaying records from database by quarter in mysql在mysql中按季度显示数据库中的记录
【发布时间】:2015-01-21 09:51:55
【问题描述】:

我有一个名为 nca_totals 的表。

表:nca_totals +----------+------------+------------+------------- -+ |总编号 | nca_total | nca_date |帐户类型 | +----------+------------+------------+------------- -+ | 13 | 10450 | 2015-01-21 | DBP-信任 | | 14 | 5000 | 2015-02-05 | DBP-信任 | | 15 | 7000 | 2015-04-02 | DBP-信任 | | 16 | 4000 | 2015-05-02 | DBP-信任 | +----------+------------+------------+------------- -+

现在我想根据日期按季度显示所有数据。假设我想像这样显示属于 1st Quarter 的所有记录:

+----------+------------+------------+------------- -+ |总编号 | nca_total | nca_date |帐户类型 | +----------+------------+------------+------------- -+ | 13 | 10450 | 2015-01-21 | DBP-信任 | | 14 | 5000 | 2015-02-05 | DBP-信任 | +----------+------------+------------+------------- -+

该日期属于一年中的第一季度(1 月、2 月、3 月)。我只有这个查询来选择日期并将其季度号返回为:

SELECT QUARTER('2015-01-11');       /* returns 1 */

如何组合该查询以按季度显示所有记录?任何人都可以帮忙吗?谢谢。

【问题讨论】:

    标签: mysql


    【解决方案1】:
    select * 
    from nca_totals 
    where QUARTER(nca_date) = 1
    

    【讨论】:

    • 请为您的答案添加一些解释。
    【解决方案2】:
     SELECT
        CEIL(MONTH(`nca_date`) / 3) AS `quarter`
    FROM `nca_totals`;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-03
      • 1970-01-01
      • 2015-06-13
      • 1970-01-01
      • 1970-01-01
      • 2014-11-29
      相关资源
      最近更新 更多