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

Laravel:どこで注文するか

    解決策:

    $ids = array(1,17,2);
     
    $ids_ordered = implode(',', $ids);
     
    $items = static::whereIn('id', $ids)
     ->orderByRaw("FIELD(id, $ids_ordered)")
     ->get();
    

    追記:

    すべてのアイテムをWHEREIN句の現在のIDの順序で一度に並べ替えますEloquentを使用する

    // Raw SQL:
    // SELECT * FROM items WHERE id IN (1,2,3,4,5) ORDER BY FIELD(id,1,2,3,4,5);
     
    $itemIds = array(1,2,3,4,5);
     
    $ids = implode(',', $itemIds);
     
    $items = static::whereIn('id', $itemIds)
        ->orderByRaw(DB::raw("FIELD(id, $ids)"))
        ->take($limit)
        ->get();
    


    1. MySQLクエリを使用してJSONオブジェクトを作成して挿入する方法は?

    2. mysqlの決定論的関数

    3. ワンクリックで複数のSQLServerに接続する方法(登録サーバーグループ)-SQL Server/TSQLチュートリアルパート5

    4. MySQLサーバーをサービスとして起動する(Win 8)