Moodle: использование соединений mysql в $table = set_sql(); метод

Я хочу знать, как применяются соединения для метода $table= set_sql();. Я пытаюсь отобразить таблицу без использования обычного метода html_table();.

Базовое приложение для одной таблицы базы данных "mdl_user":

  $table->set_sql('*', "{user}", '1');

Но я намерен выполнить более сложный SQL-запрос, используя объединения, как показано ниже:

    **SELECT aa.firstname, aa.email, zz.fullname
    FROM mdl_table1 aa
    INNER JOIN mdl_table2 zz
    ON aa.id = zz.userid WHERE lastlogin => ? and lastlogin <= ? GROUP BY firtname;**

Эта ссылка ниже может быть полезной. Я пытался обойти это, но все еще не ясно об этом. https://docs.moodle.org/dev/lib/tablelib.php


person kcay King    schedule 27.09.2016    source источник


Ответы (1)


Что-то вроде этого

$fields = 'aa.firstname, aa.email, zz.fullname',
$from = '{table1} aa
         INNER JOIN {table2} zz ON aa.id = zz.userid';
$where = 'lastlogin => :lastlogin1 and lastlogin <= :lastlogin2';
$params = array('lastlogin1' => $lastlogin, 'lastlogin2' => $lastlogin);
$table->set_sql($fields, $from, $where, $params);
person Russell England    schedule 27.09.2016