0

私は約100行のテーブルを持っており、このように毎回 number と number の間の行を取得したい

`i=1` の場合、行 `0 1 2 3 4` を取得したい

`i=2` の場合、行 `5 6 7 8 9` を取得したい

「i=3」の場合、行「10 11 12 13 14」を取得したい

そして、おそらく i の最後の値は、5ではなく3または4行を取るだけです。解決策は次のようになると思います

select * from question limit (i-1)*5 , i*5-1

しかし機能しません。クエリで変数を使用する方法がわからないので、i=1 で試してみると機能せず、構文エラーが発生しました

4

1 に答える 1

2

の最初のパラメータLIMITは、ゼロベースの開始行インデックスです。2 つ目は行数です。したがって、常に 5 行を探している場合は、次のようになります。

SELECT * FROM question LIMIT (i-1)*5 , 5

(クエリの作成に使用している言語で計算(i-1)*5し、実際の数値を MySQL に渡す必要があります)。

于 2012-05-25T15:42:46.430 に答える