#mysql #sql #laravel #eloquent #laravel-8
Вопрос:
У меня проблема с моим запросом, запрос не распознается С помощью(). Я работаю над Ubuntu и MySQL, могу ли я получить помощь, пожалуйста!
DB::select(DB::raw("WITH liststudentsoff as (
SELECT tbl_etudiants.*, tbl_cours.idCours FROM dependance_groupes
inner join tbl_etudiants on tbl_etudiants.idStudent = dependance_groupes.studentID
inner join tbl_cours on tbl_cours.groupID = dependance_groupes.groupID
inner join tbl_formations on tbl_formations.idFormation = tbl_cours.formationID
)
SELECT * FROM liststudentsoff
LEFT JOIN tbl_absences ON liststudentsoff.idStudent = tbl_absences.studentID AND liststudentsoff.idCours = tbl_absences.coursID
WHERE liststudentsoff.idCours = ".$request->idCours." and liststudentsoff.formationID = ".$cours->formationID.""));
Отображение ошибок:
[previous exception] [object] (PDOException(code: 42000): SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'liststudentsoff as (
SELECT tbl_etudiants.*, tbl_cours.idCours FROM ' at line 1 at /var/www/html/emarge-backoffice/vendor/laravel/framework/src/Illuminate/Database/Connection.php:338)
Комментарии:
1. Не могли бы вы поделиться с нами своим сообщением об ошибке, чтобы мы могли помочь вам более правильно?
2. Может быть, ваша версия MySQL 5.x? Может быть, вставленные параметры являются литералами строкового типа, пустыми или неверными?
3. Я отредактировал первое сообщение с ошибкой. Версия MySQL в Ubuntu-v5.7.34. Но в локальном с той же конфигурацией запрос работал отлично, это странно :/