CREATE TABLE `base_goods` ( `model` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '商品型号', `market_date` date NOT NULL COMMENT '上市时间(首发时间)', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`model`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 ROW_FORMAT=DYNAMIC COMMENT='商品基本库';该表根据market_date、create_time升序排列,如何查询某个market_date前后两条数据
时间: 2024-02-25 09:59:16 浏览: 137
Mysql中的排序规则utf8_unicode_ci、utf8_general_ci的区别总结
您可以使用以下 SQL 语句查询某个 `market_date` 前后两条数据:
```sql
SELECT *
FROM base_goods
WHERE market_date <= '某个market_date'
ORDER BY market_date DESC, create_time DESC
LIMIT 2;
```
其中,`某个market_date` 是您要查询的市场时间。这个查询语句会先按照 `market_date` 倒序排列,然后再按照 `create_time` 倒序排列,最后取前两条数据,即可得到某个市场时间前后的两条数据。
阅读全文