Преобразование SQL-запроса в запрос CodeIgniter - PullRequest
0 голосов
/ 06 марта 2019

У меня возникли проблемы с поиском надежного решения для этого запроса, который я сделал на сервере SQL, теперь кто-нибудь может помочь мне преобразовать этот запрос в запрос кодового кода, любая помощь будет высоко оценена

SELECT DISTINCT
    s1.idnumber,
    s1.firstname,
    s1.middlename,
    s1.lastname,
    (
        SELECT DISTINCT 
            SUM(s4.point) 
        FROM students s3 
        LEFT JOIN section_student s4 
        ON s3.id = s4.student_id
        WHERE s3.id = s1.id AND s4.schoolyear = s2.schoolyear AND s4.semester = s2.semester
    ) AS 'point'
FROM
students s1
LEFT JOIN section_student s2
ON s1.id = s2.student_id
WHERE s2.schoolyear = '2018-2019' AND s2.semester = '2nd'
GO

* Под редакцией

это результат моего запроса

и структура моей базы данных

при попытке получить все данные в течение учебного года 2018-2019 и 2-го семестра

1 Ответ

0 голосов
/ 06 марта 2019

Попробуйте это,

$this->db->select(" DISTINCT s1.idnumber,s1.firstname,s1.middlename,s1.lastname,(SELECT DISTINCT  SUM(s4.point)  FROM students s3  LEFT JOIN section_student s4  ON s3.id = s4.student_id WHERE s3.id = s1.id AND s4.schoolyear = s2.schoolyear AND s4.semester = s2.semester) AS point");
  $this->db->from('students s1');
  $this->db->join('section_student s2','s1.id = s2.student_id','left');
  $this->db->where('s2.schoolyear','2018-2019');
  $this->db->where('s2.semester','2nd');
  $query = $this->db->get();
  echo $this->db->last_query();die;//it will give you query please copy this and run in your db
  if ($query->num_rows() > 0) {
       return $query->result();
  } else {
       return array();
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...