Mysql
 sql >> база данни >  >> RDS >> Mysql

Различни резултати при използване на една и съща заявка с DB::raw и Eloquent

where свързва 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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да използвам транзакция в php/mysql

  2. IMAP &PHP - Извличане на всички имейли от папки за изпратени и входящи

  3. Безопасно ли е да съхранявате пароли в обикновен текст в MySQL *временно*?

  4. Проект Laravel ERR_EMPTY_RESPONSE

  5. Възможно ли е да се изместят данните в колоната надолу в MySQL таблица?