Я сейчас работаю над запросом MySQL.Когда он уже предоставляет правильные необходимые данные, я понял, что их необходимо преобразовать в синтаксис CodeIgniter, чтобы я мог использовать их в пользовательской модели в GroceryCRUD.Я попытался вручную ввести все значения select, join и where для каждого подходящего оператора
(e.g. $this->db->select("tul1.u_Uname AS MSN, and so on...)
, но это не работает.Я также попытался использовать
$this->db->query(and my query goes here)
мой код работает нормально, но GroceryCRUD не будет отображать поля.Я попытался выполнить простой запрос, следующий синтаксису по умолчанию
(e.g $this->db->select("fgrade_Id, CONCAT_WS ( ' ', tbluserlist.u_LastName, tbluserlist.u_FirstName ) AS Student", false);
, и смог отобразить результат, но мне не удалось преобразовать фактический запрос, который мне был необходим для указанной задачи.Фактический запрос, над которым я работаю:
SELECT tul1.u_Uname AS MSN, REPLACE(CONCAT_WS(' ', CONCAT_WS('',tul1.u_LastName, ','), IF (tul1.u_SuffixName = 'NONE' OR tul1.u_SuffixName LIKE '%n/a%' OR tul1.u_SuffixName LIKE '%n\\a%', CONCAT_WS('',tul1.u_FirstName, ','), tul1.u_FirstName), IF (tul1.u_SuffixName = 'NONE' OR tul1.u_SuffixName LIKE '%n/a%' OR tul1.u_SuffixName LIKE '%n\\a%', '', CONCAT_WS('', tul1.u_SuffixName, ',')), IF (tul1.u_MiddleName = 'NONE' OR tul1.u_MiddleName LIKE '%n/a%' OR tul1.u_SuffixName LIKE '%n\\a%', '', tul1.u_MiddleName)), ' ', ' ') AS Student, CONCAT_WS(' ', sc.course_RefNo, '~', sc.course_Title) AS Course, REPLACE(CONCAT_WS(' ', CONCAT_WS('',tul2.u_LastName, ','), IF (tul2.u_SuffixName = 'NONE' OR tul2.u_SuffixName LIKE '%n/a%' OR tul2.u_SuffixName LIKE '%n\\a%', CONCAT_WS('',tul2.u_FirstName, ','), tul2.u_FirstName), IF (tul2.u_SuffixName = 'NONE' OR tul2.u_SuffixName LIKE '%n/a%' OR tul2.u_SuffixName LIKE '%n\\a%', '', CONCAT_WS('', tul2.u_SuffixName, ',')), IF (tul2.u_MiddleName = 'NONE' OR tul2.u_MiddleName LIKE '%n/a%' OR tul2.u_SuffixName LIKE '%n\\a%', '', tul2.u_MiddleName)), ' ', ' ') AS Instructor, tfg.fgrade_Grade AS FinalGrade, tfl.fl_AY AS AY, tfl.fl_SemId AS SemId, ss.yrsem_Sem AS Semester, tfg.fgrade_DateEncoded, tfg.fgrade_Visible, tfg.fgrade_Id FROM egmsdbdev.tblfinalgrade AS tfg INNER JOIN egmsdbdev.tblfacultyloading AS tfl ON tfg.fgrade_FLId = tfl.fl_Id INNER JOIN egmsdbdev.tbluserlist AS tul1 ON tul1.u_SpId = tfg.fgrade_SpId INNER JOIN egmsdbdev.set_course AS sc ON tfl.fl_CourseId = sc.course_Id INNER JOIN egmsdbdev.tbluserlist AS tul2 ON tfl.fl_FacultyId = tul2.u_Id INNER JOIN dbris.set_yrsem AS ss ON tfl.fl_SemId = ss.yrsem_id LEFT JOIN egmsdbdev.tblfinalgrade tfg2 ON (tfg.fgrade_SpId = tfg2.fgrade_SpId AND tfg.fgrade_FLId = tfg2.fgrade_FLId AND tfg.fgrade_Id<tfg2.fgrade_Id ) WHERE tfl.fl_CourseId NOT IN ((SELECT nnc_CourseId from set_nonnumericcourse)) AND tfg2.fgrade_Id IS NULL ORDER BY Student, Course
Заранее благодарен за помощь.