mysql - MySQL 查询返回空集

标签 mysql sql

我有一个名为 product 的 MySQL 表,我想从中检索日期范围内按数量降序排列的前 3 个数据。我的 table 已提供,

# product_id, stock_id, quantity, stock_timestamp
Product ID9, Stock ID2, 1050, 2019-03-04 07:06:37
Product ID8, Stock ID2, 950, 2019-03-04 07:06:27
Product ID7, Stock ID2, 85000, 2019-03-04 07:06:17
Product ID6, Stock ID1, 750, 2019-03-04 07:06:07
Product ID5, Stock ID1, 65000, 2019-03-04 07:05:57
Product ID4, Stock ID1, 550, 2019-03-04 07:05:47
Product ID3, Stock ID, 450, 2019-03-04 07:05:37
Product ID27, Stock ID5, 1950, 2019-02-28 07:05:17
Product ID26, Stock ID5, 1850, 2019-02-28 07:05:17
Product ID25, Stock ID5, 1750, 2019-02-28 07:05:17
Product ID24, Stock ID4, 211650, 2019-02-24 07:05:17
Product ID23, Stock ID4, 1550, 2019-02-24 07:05:17
Product ID22, Stock ID4, 1450, 2019-02-24 07:05:17

我按照提供的方式编写 SQL 查询,

SELECT * FROM StockHandler.product WHERE stock_timestamp BETWEEN  DATE("2019-03-03") AND DATE("2019-03-04")  ORDER BY quantity DESC  LIMIT 3 ;

我从返回的查询中得到一个空值。我发现 SQL 中没有错误。那么,如何正确书写呢?

最佳答案

尝试以下 - stock_timestampdate()

SELECT * FROM StockHandler.product 
WHERE date(stock_timestamp) BETWEEN  '2019-03-03' AND '2019-03-04' 
ORDER BY quantity DESC  LIMIT 3 

关于mysql - MySQL 查询返回空集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54978398/

相关文章:

python - Python 脚本中的 MySQL 接口(interface)错误

mysql - SQL如何每次倒序选择一定数量的数据

sql - WHERE 和 AND 子句不返回值

sql - 如何获取系统间缓存中的模式列表?

mysql - Spring JpaRepository findBy...In(Collection) 返回并集而不是交集

mysql - 函数 SUM 在 MYSQL 中没有按预期工作

php - 如何避免使用 php 和 mysql 重复代码

sql - "Is Not Null"和 "Not Is Null"有什么区别

sql - 为什么这个索引会使 SELECT GROUP BY 查询变慢?

sql - 有没有办法在 PostgreSQL 查询中定义命名常量?