2017-02-21 36 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子句一起使用。 –

相关问题