我被指派在一个网站上做进一步的开发,这个网站目前是便利店经理监视“一周中的购物袋”中哪些物品的网站。前开发人员的工作非常草率,所以每当经理们想:“该死!我需要编辑这篇文章,因为我只是输入了它的错误值”。他们必须输入同名的新文章,然后用相同的名称输入两篇文章,但价格和DATE_TIME不同(输入文章的日期和时间)。数据库如下所示:
________________________________________________
|___itemId___|___price___|______date_time______|
| 1 | 2.30 | 2012-01-01 00:00:00 |
| 2 | 1.50 | 2012-01-01 00:00:00 |
| 3 | 5.99 | 2012-01-01 00:00:00 |
| 4 | 0.99 | 2012-01-01 00:00:00 |
| 4 | 2.00 | 2012-01-01 00:10:00 |
| 4 | 4.99 | 2012-01-01 00:20:00 |
| 5 | 10.00 | 2012-01-01 00:00:00 |
| 6 | 39.99 | 2012-01-01 00:00:00 |我正在研究这个SELECT itemId,price,MAX(date_time),从myTable获得每一项的最新行,如下所示:
________________________________________________
|___itemId___|___price___|______date_time______|
| 1 | 2.30 | 2012-01-01 00:00:00 |
| 2 | 1.50 | 2012-01-01 00:00:00 |
| 3 | 5.99 | 2012-01-01 00:00:00 |
| 4 | 4.99 | 2012-01-01 00:20:00 |
| 5 | 10.00 | 2012-01-01 00:00:00 |
| 6 | 39.99 | 2012-01-01 00:00:00 |但我得到的只是:
________________________________________________
|___itemId___|___price___|______date_time______|
| 4 | 4.99 | 2012-01-01 00:20:00 |有人能在这件事上帮我吗?
发布于 2012-05-15 09:01:35
添加一个GROUP BY子句:
SELECT itemId, price, MAX(date_time)
FROM myTable
GROUP BY itemId发布于 2012-05-15 09:03:49
尝试使用group by或distinct
发布于 2012-05-15 09:13:21
SELECT t0.itemId,
t0.price,
t0.date_time
FROM myTable AS t0
LEFT JOIN myTable AS t1
ON t0.itemId = t1.itemId
AND t1.date_time > t0.date_time
WHERE t1.itemId IS NULL; https://stackoverflow.com/questions/10597357
复制相似问题