使用mysql从结果集中获取最后4行的最佳方法

Pra*_*u M 1 mysql sql sql-order-by

任何人都可以告诉我,我需要使用mysql从结果集中获取最后4行.结果集共返回6条记录.

但是,我需要从last4获取记录...即,

Record-3
Record-4
Record-5
Record-6
Run Code Online (Sandbox Code Playgroud)

OMG*_*ies 8

要获取最后x行,但按升序返回,请使用:

  SELECT x.value
    FROM (SELECT y.value
            FROM TABLE y
        ORDER BY y.value DESC
           LIMIT 4) x
ORDER BY x.value
Run Code Online (Sandbox Code Playgroud)

答案要求您根据所需的行创建派生表(AKA内联视图).然后外部查询重新排序值以进行演示.


Pek*_*ica 5

SELECT * FROM tablename ORDER BY id DESC LIMIT 0,4 
Run Code Online (Sandbox Code Playgroud)

将为您提供最后4条记录(当您在id此处订购应该是自动增量字段的表时,"最后" .)