从MAX mysql关键字中获取多条记录?

时间:2011-07-28 10:39:57

标签: mysql

我只有一个名为offer的表,并且它有多个商品,例如每次我们提供商品时,我们会创建一个新行,例如:前往Timbuktu,每行可以有10行或更多行包含优惠,每次提供优惠时,都会在列名“created_on”中使用PHP unix时间戳保存,因此要确定哪个优惠是最新的,我目前正在使用以下查询:

  

SELECT * FROM offers WHERE city ='Timbuktu'AND created_on =(SELECT max(created_on)from offers WHERE city ='Timbuktu')

如果我只需要获取一个最新的行,如果我想获取具有最大时间戳的最后4行或8行,那么这是有用的,我怎么能以最有效的方式做到这一点?

2 个答案:

答案 0 :(得分:1)

SELECT *
FROM offers
WHERE city= 'Timbuktu'
order by created_on desc
limit 0, 8

并且对于1行,您可以使用相同的请求,只需将1替换为1

答案 1 :(得分:1)

SELECT * FROM offers WHERE city='Timbuktu' ORDER BY created_on DESC LIMIT 4;