私は次のクエリを持っています:
SELECT id, title, adcontent, adtargetURL, locationpage,
locationarg, locationid, displayorder, visible, schedstart,
schedstop, created, modified, createdby, modifiedby
FROM ads
ORDER BY locationpage, locationarg, locationid, title
次の方法でフィールドを並べ替える必要があります。
- 最初に「all」の値を持つフィールドを使用してロケーションページで並べ替え、次に残りを昇順で並べ替えます
- 次に、最初にNULLまたは空の文字列値を指定したlocationargを使用し、残りをascに入力します。
- 次に、最初にNULLまたは0の値を持つlocationidによって、残りはascにあります
- その中で、最初に「1」、次にNULL、次に「2」の表示順序で並べ替えます。
- そして最後に、それらのいずれかがすべて同じである場合は、ASCのタイトルで
これを達成するために、ORDER BYはどのように見えるべきですか?
これが私がこれまでに持っているものです:(以下から更新)
ORDER BY locationpage='all',
locationpage ASC,
locationarg ASC,
locationid ASC,
displayorder='1',
ISNULL(displayorder),
displayorder='2',
title ASC
...しかし、これは機能していません!