我有一个小项目,我的工作,并具有以下设置分组:MySQL的获取最小,最大和最古老的
MariaDB [b7_19195200_prices]> select * from watchlist;
+----+-------------+-------+---------------------+--------+
| id | item | price | recorded | errors |
+----+-------------+-------+---------------------+--------+
| 3 | 32725999014 | 1.46 | 2016-11-21 20:30:22 | 0 |
| 4 | 32725999014 | 1.93 | 2016-11-21 20:56:21 | 0 |
| 5 | 32725999014 | 2.01 | 2016-11-21 20:56:32 | 0 |
| 6 | 122444 | 22.43 | 2016-11-21 21:03:19 | 0 |
| 7 | 32725999014 | 1.11 | 2016-11-21 21:25:33 | 0 |
+----+-------------+-------+---------------------+--------+
5 rows in set (0.00 sec)
所以我想获得价格的最大的,最小价格和第一个(该项目的价格最早记录)。所以我会得到如下结果:
+----+-------+-------+-------------+----------+
| id | low | high | item | original |
+----+-------+-------+-------------+----------+
| 6 | 22.43 | 22.43 | 122444 | 12.11 |
| 3 | 1.11 | 2.01 | 32725999014 | 0.51 |
+----+-------+-------+-------------+----------+
其中低,高和原始分别是该物品的最低,最高和原始价格。奖金将能够知道什么时候最高和最低。我一直在使用获得最高,最低及原价格为2个不同的查询:
SELECT `id`, MIN(`price`) low, MAX(`price`) high, `item`
FROM `watchlist`
GROUP BY `item`;
和
SELECT `id`, MIN(`recorded`), `price` original, `item`
FROM `watchlist`
GROUP BY item;
反正我能做到吗?
谢谢!
您的价格数据类型是DECIMAL,对不对? – Strawberry
不,它不是。我把它作为varchar – wiZZmnma
好的。也许解决它! – Strawberry