【问题标题】:Query to get the product details added within last week查询获取上周添加的产品详情
【发布时间】:2018-11-09 14:54:56
【问题描述】:

我写了一个查询来获取上周(周一至周日)售出的产品数量。但是该查询在GETDATE() 函数中给了我一个错误。下面你可以看到我从 SQL 得到的错误

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'GETDATE()))AND a.added_date < DATEADD(day, -DATEPART(dw, GETDATE())+1, CONVERT' at line 4

以下是用于获取结果的查询

SELECT productid, 
       Count(productid)AS COUNT 
FROM   tbl_orderproduct AS a 
WHERE  a.added_date >= Dateadd(day, -Datepart(dw, Getdate()) - 6, 
                              CONVERT(DATE, Getdate())) 
       AND a.added_date < Dateadd(day, -Datepart(dw, Getdate()) + 1, 
                          CONVERT(DATE, Getdate())) 
GROUP  BY productid; 

【问题讨论】:

  • MySQL 中没有GETDATE() 函数。你确定你使用的是 MySQL 吗?
  • 您使用的是与 MSSQL 而非 MySQL 相关的函数
  • 是的,我正在使用 MYSQL,顺便说一句,我从上一个 StackOverflow 问题中的答案之一得到了该查询

标签: mysql sql


【解决方案1】:

我想你想要:

where a.added_date >= current_date - interval 6 day

您使用的语法适用于 SQL Server,而不是 MySQL。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-07
    • 1970-01-01
    • 2021-11-30
    • 1970-01-01
    • 2012-05-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多