0

e コマース システムを使用しており、製品の並べ替え方法を変更しようとしています。

私の質問は、2 つの項目が同じ値を持つ場合、mysql はどのようにソートを処理するのでしょうか?

例えば

製品は、割り当てられた位置によって並べ替えられます (したがって、位置 1 が一番上に表示されます)。

しかし、3 つの製品が掲載順位 1 に割り当てられ、2 つの製品が掲載順位 2 に割り当てられている場合、掲載順位 1 に割り当てられた 3 つの製品はデフォルトでどのように並べ替えられますか? これは e コマース システムに固有のものですか、それとも ID などの mysql のデフォルトはありますか?

これが十分に明確であることを願っています.Googleで良い答えを実際に見つけることができませんでした.

4

3 に答える 3

2

順序付けの基準となる追加のフィールドを指定できます。最初のフィールドが優先され、後のフィールドが同点を解消する方法を決定します。例えば:

ORDER BY foo ASC, bar DESC
于 2012-06-28T12:32:10.910 に答える
0

他の「デフォルト」の順序は適用されないため、結果はランダムです。複数の列で並べ替える必要がある場合は、次のようにすることができます

order by position, id, date
于 2012-06-28T12:32:22.997 に答える
0

ORDER BY句で複数の列名 (A、B、C など) を指定できます。A の値が等しい場合、並べ替えの決定には B が使用されます。B も等しい場合は、C が使用されます。これは、辞書式順序付けと呼ばれます。SELECTコマンドとORDER BY句の SQL ドキュメントを参照してください。

于 2012-06-28T12:34:54.777 に答える