0

LIMIT結果セットに常に最初の行を含めるために演算子を使用する方法があるのだろうか。指定された範囲に関係なく意味します。例:

SELECT * FROM `table` LIMIT 5, 10

最初の行と行6から15を返すか、次のようにします。

SELECT * FROM `table` LIMIT 200, 30

最初の行と行201から231を返す必要があります。これを行う方法はありますか?

編集最初の行IDは常に0です

4

2 に答える 2

3

私は別の方法を見ていません:

(SELECT * from table LIMIT 1)
UNION
(SELECT * FROM table LIMIT 5, 10)

またはスコットが指摘したように、新しい情報があります;)

SELECT * from table Where id = 0
UNION
(SELECT * FROM table LIMIT 5, 10)

括弧を忘れないでください:

ORDER BYまたはLIMITを個々のSELECTに適用するには、SELECTを囲む括弧内に句を配置します。

(SELECT a FROM t1 WHERE a = 10 AND B = 1 ORDER BY A LIMIT 10)UNION(SELECT a FROM t2 WHERE a = 11 AND B = 2 ORDER BY A LIMIT 10);

于 2013-02-01T13:56:53.220 に答える
2

UNIONを使用して、次の2つの選択を接続できます。(SELECT * FROM table LIMIT 1) UNION (SELECT * FROM table LIMIT 5, 10)

于 2013-02-01T13:57:14.100 に答える