テーブル "people" のデータが与えられた場合:
+----+-------+
| id | name |
+----+-------+
| 1 | Jane |
| 2 | Joe |
| 4 | John |
| 5 | Alice |
| 6 | Bob |
+----+-------+
そして注文:
SELECT * FROM people ORDER BY name
...これは次を返します:
+----+-------+
| id | name |
+----+-------+
| 5 | Alice |
| 6 | Bob |
| 1 | Jane |
| 2 | Joe |
| 4 | John |
+----+-------+
上記の順序を含め、指定された ID を持つ行の後の行のみを返すクエリを作成するにはどうすればよいでしょうか。たとえば、ID が 1 の場合、次のように返されます。
+----+-------+
| id | name |
+----+-------+
| 2 | Joe |
| 4 | John |
+----+-------+
明確にするために、idは可変であり、事前にはわかりません。
一般的にサポートされている SQL を使用するアプローチは素晴らしいですが、私は PostgreSQL 9.2 と ActiveRecord 3.2 を使用しています (OVER() や ROW_NUMBER() など)。
[編集] 以前、指定された ID の行を含む、間違った目的の結果セットを表示していました。ただし、質問で説明されているように、結果セットには、指定された ID の後の行のみを含める必要があります。