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

レールは特定の順序で並べ替えます

    3、4、2は順次注文ではないため、適切に注文するにはカスタム条件が必要です。 CASE WHEN

    order_sql = Arel.sql(
      'CASE WHEN users_count = 3 THEN 0 ' \
        'WHEN users_count = 4 THEN 1 ' \
        'ELSE 3 END'
    )
    Group.where(users_count: [2,3,4]).order(order_sql)
    

    0が得られます users_count = 3の場合 、1 users_count = 4の場合 、および3 その他の場合。デフォルトの昇順を使用すると、希望する結果が得られます。



    1. MySQLでのINTERVALとCURDATEの操作

    2. MySQLとネストされたセット:遅いJOIN(インデックスを使用しない)

    3. mysqlエラーコード1248

    4. Oracle PL / SQLのhtmlエンティティに<、>、および&文字をエスケープする方法