【问题标题】:Select records between two different dates选择两个不同日期之间的记录
【发布时间】:2012-03-03 09:41:12
【问题描述】:

我想从日期在 28-02-2012 到 30-30-2012 之间的表中选择记录

有人知道怎么做吗,请回答一下

谢谢

运行查询后我想要这样的数据

proname pc1tot pc2tot  allpctot

sample1  10      12      22

【问题讨论】:

标签: php mysql sql


【解决方案1】:
SELECT * FROM table_name WHERE date_col BETWEEN '2012-02-28' AND '2012-03-30'

我认为这是错字——不是2012-30-30,是2012-03-30

【讨论】:

    【解决方案2】:

    没有表架构,原理如下:

    select myDate, other fields...
    from myTable
    where myDate >= '2012-02-28' and myDate <= '2012-03-30'
    

    您也可以在某些数据库中使用“between”:

    select myDate, other fields...
    from myTable
    where myDate between '2012-02-28' and '2012-03-30'
    

    【讨论】:

    • 是的,这是一项工作,但它返回空行,但此查询返回空行。但我现在想记录这种情况 (dd-mm-yy)28-02-2012 到 03-03-2012
    • 您能提供您选择的示例数据吗?还有什么数据类型是日期列?
    • 我在提问后得到了样本
    • 不,source 数据——包括日期列和它在表中定义的数据类型(字符串、日期时间)等——可能最容易显示它的“为此创建表”脚本
    【解决方案3】:

    试试这个

    select * from table1 where field_val between 28-02-2012 and 30-30-2012
    

    【讨论】:

      【解决方案4】:

      您不应将日期存储为日-月-年格式,而是format required by mysql - 年-月-日。

      因此,您必须更改表结构。

      【讨论】:

      • 您应该将日期存储在适当的date / time data type
      • 感谢您的链接。随意将其添加到答案中,而不是评论。
      【解决方案5】:

      您的问题有类似的答案。

      选择 * 从表 “28-02-2012”和“30-02-2012”之间的日期

      【讨论】:

      • 是的,这是一项工作,但我现在想要记录这种情况 (dd-mm-yy)28-02-2012 到 03-03-2012
      • 这里的所有示例都应该有效。但是,您所指的现在记录是什么?
      猜你喜欢
      • 1970-01-01
      • 2016-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-03
      • 2018-06-10
      • 2018-07-19
      相关资源
      最近更新 更多