1

最初に目的のレコードを出力し、次に結果セットの残りを出力するクエリがあります。

ニュースアイテムのリストがあり、各アイテムの横に「続きを読む」が付いています。

ユーザーが「続きを読む」リンクをクリックすると、選択したニュースアイテムが必要なニュースページに移動します(今はid = 1としましょう)。その後、残りのニュースアイテムを出力して並べ替えます。日付別。

私はこれまでに持っています:

"SELECT * FROM news ORDER BY(id, 1), newsdate DESC"
4

2 に答える 2

0

その趣旨で何かを構築できるかもしれませんが、個人的には 2 つのクエリにフォールバックします。

SELECT * FROM news WHERE id=$id

その後;

SELECT * FROM news WHERE id<>$id ORDER BY newsdate DESC

ビューに 1 つの結果セットを渡す必要がある場合は、2 つを連結できます。

于 2012-11-07T11:45:09.230 に答える
0

UNION クエリが必要なだけかもしれません。

SELECT * FROM news WHERE id=1
UNION (SELECT * FROM news WHERE id<>1 ORDER BY newsdate DESC)

( ) の間に 2 番目のクエリを含めるようにしてください。

または、次のようなトリックを使用することもできます。

SELECT * FROM news ORDER BY id=1 DESC, newsdate DESC
于 2012-11-07T11:59:39.423 に答える