sql >> データベース >  >> RDS >> Mysql

SQLORDERBY複数の列

    ORDER BYで並べ替える 最初の列によって実行され、次に指定されたステートメントの各追加列によって実行されます。

    たとえば、次のデータについて考えてみます。

    Column1    Column2
    =======    =======
    1          Smith
    2          Jones
    1          Anderson
    3          Andrews
    

    クエリ

    SELECT Column1, Column2 FROM thedata ORDER BY Column1, Column2
    

    最初にColumn1のすべての値で並べ替えます

    次に、列をColumn2で並べ替えます これを作成するには:

    Column1    Column2
    =======    =======
    1          Anderson
    1          Smith
    2          Jones
    3          Andrews
    

    つまり、データは最初にColumn1で並べ替えられます 順序、次に各サブセット(Column1 1を持つ行 値として)は2番目の列の順にソートされます。

    投稿した2つのステートメントの違いは、最初のステートメントの行が最初にprod_priceでソートされることです。 (価格順、最低から最高)、次に名前順(2つのアイテムの価格が同じ場合、名前のアルファ値が低い方が最初に表示されます)、2番目は名前順に並べ替えられます。のみ(prod_nameに基づいて価格が順番に表示されることを意味します 価格に関係なく)。



    1. SELECT句とWHERE句でのストアド関数呼び出しの最適化

    2. JSON_OBJECTAGG()–MySQLのクエリ結果からJSONオブジェクトを作成します

    3. MySQLのSELECTINTOとINSERTINTOの違い

    4. SQLiteは14のエラーコードを返しました