【问题标题】:SQL Query Date Range in Multiple YearsSQL查询多年日期范围
【发布时间】:2015-04-04 16:24:24
【问题描述】:

我需要在一定范围内(一个月的第一周/最后两周)获得多年的所有销售额。类似的东西

SELECT * FROM sales_history.transactions WHERE 
TRANS_DATE BETWEEN LIKE '%-04-01' AND LIKE '%-04-14'

以上当然行不通。 TRANS_DATE 是 DATE 类型。

我想过做类似的事情

SELECT * FROM sales_history.transactions WHERE 
TRANS_DATE BETWEEN '2007-04-01' AND '2007-04-14' OR 
TRANS_DATE BETWEEN '2008-04-01' AND '2008-04-14' OR 
TRANS_DATE BETWEEN '2009-04-01' AND '2009-04-14'

但似乎应该有一种更简单的方法来做到这一点,而且我需要的时间越长,痛苦就越多。理想情况下,我希望能够定义开始年份和结束年份,但我可以在年份上使用直接通配符并获取数据库中所有年份的数据。

【问题讨论】:

    标签: mysql sql date


    【解决方案1】:
    SELECT  * FROM sales_history.transactions WHERE
    MONTH(TRANS_DATE)=4 AND DAY(TRANS_DATE) BETWEEN 1 AND 14
    

    祝你好运:D

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-24
      • 2012-01-11
      • 1970-01-01
      • 1970-01-01
      • 2022-01-13
      • 1970-01-01
      相关资源
      最近更新 更多