0

8000 レコードの MYSQL テーブルが 1 つあります。フルネームの最初の文字で名、ミドルネーム、および姓を照会したいと思います。たとえば、名前の最初の文字が SSS である 40 行のレコード (名、ミドルネーム、姓) があります。私の質問は、「SSS」をクエリして6つの結果のみを返すにはどうすればよいですか。「SSS」を再度クエリすると、さらに6つの結果が必要になり、40レコードのクエリがすべて終了するまで続きます。

次のクエリを使用しましたが、最初の 6 つの結果のみが返され、次回「SSS」をクエリすると、同じ結果が何度も返されます。あなたの助けが必要です。

SELECT * 
FROM Table  
WHERE  (UPPER(FName) LIKE UPPER('S%') 
       AND UPPER(MName) LIKE UPPER('S%') 
       AND UPPER(LName) LIKE UPPER('S%') 
ORDER BY ID 
LIMIT 6 OFFSET 0

前もって感謝します。

4

2 に答える 2

0

あなたはIDで注文しています - いいですね。最後に返されたデータ セットの最大 ID を記憶し、次にクエリを実行するときに条件 ID > your_last_max_id を追加します。

于 2013-04-25T15:27:24.500 に答える