-3
+----+
| id |
+----+
| 1  |
+----+
| 2  |
+----+
| 3  |
+----+
| 4  |
+----+
+----+
| 5  |
+----+

リストに 2、3、4、5 または 3、4、5 が表示されるように、特定の ID のレコードを表示するにはどうすればよいですか?

UNION で 2 つのクエリを実行することを考えましたが、最終的には 2,1,3,4,5 または 2,5,4,3,1 が表示されます。

4

2 に答える 2

4

もしかして

SELECT * FROM table WHERE id IN (2,3,4,5)

SELECT * FROM table WHERE id >= $id ORDER BY id ASC LIMIT 4

2 番目のクエリで、$id はユーザーからの入力です。また、LIMIT 4 の代わりに、ユーザー入力として 4 を使用することもできます

于 2012-06-02T02:41:26.497 に答える
2

多分

$sql = "SELECT * FROM table WHERE id >= $curID ORDER BY id ASC LIMIT 4";

検索するエントリの数を指定する場合は、次を使用できます。

$sql = "SELECT * FROM table WHERE id >= $curID ORDER BY id ASC LIMIT $number";

クエリにプラグインする前に、必ず入力をサニタイズしてください。詳細については、この投稿を参照してください: PHP でユーザー入力をサニタイズするための最良の方法は何ですか?

于 2012-06-02T02:54:46.273 に答える