#php #mysql #laravel
#php #mysql #laravel
Вопрос:
У меня возникли проблемы с созданием красноречивого запроса, в котором я могу воссоздать эту команду sql: Столбец date_created — это datetime .
SELECT * FROM covidchecklist cc
LEFT JOIN patient_appointment pa ON cc.appointment_id = pa.appointment_id
LEFT JOIN users pat ON pa.user_id = pat.id
WHERE DATE_FORMAT(cc.date_created,'%Y-%m-%d') BETWEEN '2021-01-27' AND '2021-01-27'
Что у меня есть прямо сейчас:
CovidChecklist::
leftJoin('patient_appointment', 'covidchecklist.appointment_id', '=', 'patient_appointment.appointment_id')
->leftJoin('users as patient', 'patient_appointment.user_id', '=', 'patient.id')
->whereRaw(' DATE_FORMAT(covidchecklist.date_created,"%Y-%m-%d") BETWEEN '.'$this->date_from'.' AND '.'$this->date_to'.' ')
->select(
*select stuff*
)
->get();
Я использую whereRaw, так как не могу заставить это работать:
->whereBetween('covidchecklist.date_created', [$this->date_from, $this->date_to])
Ответ №1:
Попробуй это, приятель
->whereBetween(DB::raw('DATE_FORMAT(covidchecklist.date_created,"%Y-%m-%d")'), [$this->date_from, $this->date_to])