0


eventsを含む テーブルがありますtimestampSELECT次のイベントと過去の最後の 8 つのイベントの 2 つのイベントを行いたいと思います。
2 つの異なるクエリでは、次のようになります
。1)

SELECT * FROM events WHERE timestamp > timeNow ORDER BY timestamp LIMIT 0,2

2)

SELECT * FROM events WHERE timestamp < timeNow ORDER BY timestamp DESC LIMIT 0,8

クエリを 1 つだけ実行することは可能ですか?

ありがとう

4

1 に答える 1

1

UNION または UNION ALLを試す

SELECT * FROM events WHERE timestamp > timeNow ORDER BY timestamp LIMIT 2
UNION ALL
SELECT * FROM events WHERE timestamp < timeNow ORDER BY timestamp DESC LIMIT 8;

また、rememberLIMIT 8は と同等LIMIT 0, 8です。この理由は、LIMIT 0, 8「行 0 から開始し、返される行数を 8 に制限する」ことを意味するためです。

于 2013-05-31T08:51:50.933 に答える