現在、私たちはCMSを書き直しており、クライアントは「位置」フィールドを使ってテーブル内のアイテムを並べ替えることができます。したがって、アイテムが位置1としてマークされている場合は、上部に表示され、次に位置2が表示されます。整数の順に空白のフィールドが下に表示されます
問題は、毎回位置を記入する必要がないことです。彼らは何かを再注文して、位置フィールドがしばしば空白になるようにしたい。だから...
を次のように持っているかもしれないカー - 1
バイク - 2
ハウス
コンピュータ
犬
あなたが使用している場合ので、これが問題になります次のSQL ...
SELECT ProductName FROM Products ORDER BY Position DESC;
空白のものはすべて下にはなく上に移動します。
SQL文を使用して正しい順序に入れられますか?
David Bは2つの式で正解を返します。最初の表現にはいくつかの選択肢があります。「トリック」は、すべての非NULL値をグループ化しています。 'Position'が数値の場合は、NULL以外のすべての値を0として簡単にグループ化することができます。ORDER BY位置 - 位置DESC、位置DESC – spencer7593