ホームページ  >  記事  >  バックエンド開発  >  このような並べ替えを実現する方法

このような並べ替えを実現する方法

WBOY
WBOYオリジナル
2016-06-13 13:40:17773ブラウズ

このような並べ替えを実現する方法
商品リストでは、新しく追加された商品が棚にあり、在庫がある商品がデフォルトで先頭に表示され、棚から出て在庫が少ない、または在庫が 0 の商品は最後に表示されます。
goods_id は自動でインクリメントされます。大きなものは最近追加されたものです。在庫フィールド: is_on_sale 1 は在庫あり 0 は在庫なし 在庫数量: 商品番号

SQL の書き方

------解決策------ -- ------------
ORDER BY `is_on_sale` DESC、`goods_id` DESC、`goods_number` DESC
------解決策---------
is_on_sale の説明、商品番号の説明、商品 ID の説明で注文


order by は複数回使用可能、優先順位は順番に並べられており、
is_on_sale が一番上、売架が一番下にあります
goods_number ソート結果では上、在庫が最も多いもの 先頭に
goods_idが前回の結果にあり、同じ条件の新規のものが一番上にあります

------解決策------------------
g.is_on_sale desc は、棚上の商品が前に配置されることを意味します
在庫が 0 の棚上の商品も、棚外商品の前に表示されます
これを望まない場合そのためには、判定条件を追加する必要があります
g.is_on_sale と g.goods_number>0 desc
など

コードを書く前に SQL マネージャーでさまざまな状況をテストする必要があります

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。