【问题标题】:SQL Query Comparing DateSQL查询比较日期
【发布时间】:2013-09-16 21:10:47
【问题描述】:

我有一个包含“添加日期”列的项目表。我想要做的是选择过去两周内添加的所有项目。我怎样才能做到这一点?

 $sql = "SELECT *
           FROM iteminfo
          WHERE quantity > 0
          ORDER BY ID ASC";
 // $query = mysql_query($sql);

【问题讨论】:

  • 你试过了吗?发布一些代码,所以不是“为我做”的网站。
  • 是的。但是我只是根据它的id显示它,因为我不知道时间。这里是:$sql = "SELECT * FROM iteminfo WHERE quantity > 0 ORDER BY ID ASC";// $query = mysql_query($sql);
  • 您应该将代码添加到您的问题中,单击edit 选项并在那里添加您的代码。不要忘记格式化代码,这样可以更好地理解
  • 是的,先生!下次。谢谢你:)

标签: sql date time


【解决方案1】:

这是你想要的代码:

select item from itemTable
where date_added >= ADDDATE(NOW(), INTERVAL - 14 DAY);

【讨论】:

    【解决方案2】:

    试试这个(对于 MySQL):

    SELECT * FROM table WHERE DATE_ADD(date_added, INTERVAL 2 WEEK) >= NOW();
    

    【讨论】:

      【解决方案3】:

      如果您使用的是 MS SQL Server,请尝试以下代码:

      SELECT tb.date_added
        FROM MyTable tb
       WHERE tb.date_added > DATEADD(week, -2, GETDATE())
      

      对于 MySQL 试试:

      SELECT tb.date_added
        FROM MyTable tb
       WHERE DATE_ADD(tb.date_added, INTERVAL 2 WEEK) >= NOW();
      

      【讨论】:

      • 谢谢先生!我很感激
      • 不客气。如果给出的某些答案有用,请选中绿色的Answered 复选标记,以便其他人知道该问题已得到解答,并且是正确或有用的答案。不过,下次在您喜欢的搜索引擎或 SO 中进行搜索时,您会发现很多主题的答案,例如 stackoverflow.com/search?tab=votes&q=sql%20date%20week
      【解决方案4】:

      基本上它取决于数据库,但你可以尝试这样的事情:

      select * from table where date_added > getdate()-14
      

      【讨论】:

        【解决方案5】:

        最简单的。

        [Yourdatecolumn]

        另一种选择是

        DATEDIFF(DD, [Yourdatecolumn],GETDATE()) 在 0 到 13 之间

        【讨论】:

          【解决方案6】:

          试一试:

          SELECT *
          FROM yourTable
          WHERE Date_Added >= DATEADD( week, -2, GETDATE())
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2013-11-24
            • 1970-01-01
            • 2012-08-02
            • 2014-10-28
            • 2010-12-04
            • 1970-01-01
            • 2020-04-21
            • 1970-01-01
            相关资源
            最近更新 更多