如何在特定的一行后选择20行

时间:2012-01-13 23:25:29

标签: mysql

好吧,伙计们,我有这个表,我按日期排序,现在所有的ID都混合了 我选择了20个第一行,然后想要在最后一行之后再获得20行 使得更清楚:('SELECT * FROM switch ORDER BY from_date ASC')

id  what    employee    from_date
55  1   11223   2012-01-26
69  3   30182   2012-01-12
67  3   12312   2031-01-12
68  3   12312   2031-01-12
65  3   12312   2031-01-12
6   3   12312   2031-01-12
64  3   12312   2031-01-12
63  3   12312   2031-01-12
**62    3   12312   2012-01-31**
60  3   30182   2012-01-18
61  3   30182   2012-01-18
59  3   30182   2012-01-18
57  3   30182   2012-01-18
58  3   30182   2012-01-18

现在我想在id = 62之后从这个表中获得20行 输出应该给我:

60  3   30182   2012-01-18
61  3   30182   2012-01-18
59  3   30182   2012-01-18
57  3   30182   2012-01-18
58  3   30182   2012-01-18

2 个答案:

答案 0 :(得分:5)

不幸的是,我没有得到你订购的专栏,但这对所有人都有用。

SELECT *
FROM your_table_name
ORDER BY column_name ASC LIMIT 20, 20

这将在第20行后返回20行。 在您的情况下,查询将是:

SELECT * FROM switch ORDER BY from_date ASC LIMIT 20, 20

答案 1 :(得分:0)

请你解释一下。你究竟要从桌子上得到什么?如果您按日期排序我假设您正在尝试根据日期获取数据。但是你说你希望通过id获取它?这可能就是你要找的......

select top 20 * from [table] where [condition]
union all
select top 20 * from [table] where [condition]

- 尝试,尝试,得到它!