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

DB::rawとEloquentで同じクエリを使用した場合の異なる結果

    where rawステートメントを使用しないように指示しない限り、3番目のパラメーターをバインドし、通常は文字列として扱います。 DB::raw またはwhereRaw あなたのために働くでしょう:

    return User::join('squad_user', 'users.id', '=', 'squad_user.user_id')
           ->join('seasons', 'squad_user.squad_id', '=', 'seasons.squad_id')
           ->where('squad_user.join_time', '<=', DB::raw('seasons.end_time'))
           ->where(function ($query)
           {
               $query->where('squad_user.leave_time', '>=', DB::raw('seasons.start_time'))
                     ->orWhereNull('squad_user.leave_time');
           })
           ->where('seasons.id', 3)
           ->get(['users.*']);
    


    1. Crypt()ソルト生成とパスワード暗号化、うまく実行されましたか?

    2. MySQLで配列変数をシミュレートするにはどうすればよいですか?

    3. FORのSQLクエリ動的テーブル名

    4. mysqlの最大結合テーブルはいくつですか?そしてそれを数える方法は?