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

通貨値のORDERBY

    2つの列が必要です:

    • 1つは値、float / double(または整数)で、順序付けが可能で、合計などの操作で使用できます。
    • 通貨用に1つ( ISO4217標準 に続くchar(3) )他の目的(表示、変換など)に使用されます

    値と記号の両方をvarchar内に格納することは意味がありません。特に、通貨記号の位置は国によって異なるため(最初または最後にあります)、記号と値の間にスペースがある可能性があります。かどうかなど

    そうは言っても、テーブルを変更したくない場合は、そのようなことがうまくいく可能性があります:

    ORDER BY CAST(
      REPLACE(REPLACE(REPLACE(thecolumn,'$',''),'£',''),'₹','')
      AS DECIMAL(10,2)
    )
    


    1. 結婚式の組織のデータモデル

    2. 左結合と左外側結合の違い

    3. Oracleの日付から短い日の名前を返す

    4. MySQLのアクセントに依存しない検索クエリ