2017-02-21 35 views
-3

這是我的面試問題。如何從表中獲取第n條記錄而不使用索引?

EX:表有100條記錄,20條記錄已被刪除現在我想要得到95條記錄。

當我重播這個答案好像

SELECT * FROM表名其中id = 95;

他說這是錯的,並說不使用索引。

這是可能的嗎?

如果是如何編寫查詢? 注意: 1)不應該使用索引

+0

'ORDER BY ID OFFSET 95 LIMIT 1'? 「 – Strawberry

+1

'」表格有100條記錄,20條記錄已被刪除「' - 這不是說表格現在只有80條記錄嗎?所以沒有「第95次」的記錄?面試問題本身不清楚。沒有定義「第95次」記錄是什麼或用什麼標準來找到它。聽起來好像進行面試的人也不明白這個問題。 – David

+0

@Strawberry Plz詳細答案可能對其他人有幫助甚至我可以接受你的答案。謝謝 –

回答

1

'SELECT * FROM table ORDER BY 'id' OFFSET 95 LIMIT 1'可能是面試官等待的答案。

+2

沒有ORDER BY子句,OFFSET和LIMIT是毫無意義的。 – Strawberry

+0

OFFSET只能與ORDER BY子句一起使用。 –

相關問題