2012-12-18 12 views

risposta

10

Se si sa ci sono 35 record, si desidera limit 1 offset 34.

Se si desidera ottenere il secondo elemento da su qualsiasi impostato, è possibile invertire l'ordine dell'insieme e selezionare un elemento, sfalsare un elemento. È possibile implementare questo da soli selezionando prima i due elementi del set inversamente ordinato, quindi invertire il set e selezionare il primo elemento:

select * from 
    (select * from my_table order by id desc limit 2) table_alias 
order by id limit 1 
15

più semplice metodo

SELECT * FROM tab ORDER BY col DESC LIMIT 1,1 

Questo sceglierà un record partire dal 2 ° LIMIT 1,1 mezzi saltare prima scegliere seguente

L'ordine da dovrà essere fatto in modo che quest'ultimo è prima Probabilmente il nome indicato sarà id

Se si conosce il numero del record desiderato, tuttavia, perché non è possibile selezionare solo dove id = 34?

+0

ottima risposta! +1 funziona per qualsiasi numero di riga –

+0

come posso utilizzare questa query in yii2? –

Problemi correlati