Joomla SQL查询替代

时间:2016-05-06 10:53:14

标签: mysql joomla

我的模型中有以下getListQuery()。我想添加另一个连接(参见更多),并想知道是否可以用另一种方式完成关卡部分(没有GROUP_CONCAT):

protected function getListQuery()
{   

    $db    = $this->getDbo();
    $query = $db->getQuery(true);

    $query->select(
        $this->getState(
            'list.select',
            'a.id AS id,' .
            'a.dbid AS dbid,' .
            'a.alias AS alias,' .
            'GROUP_CONCAT(DISTINCT l.level ORDER BY l.level ASC) as `levels`'
        )
    );

    $query->from('#__maintable AS a');

    $query->join('LEFT', '#__leveltable AS l ON l.dbid = a.dbid');

    $query->group($db->quoteName('a.id'));

    $query->order($db->escape($this->state->get('list.ordering', 'a.id') . ' ' . $db->escape($this->state->get('list.direction', 'ASC'))));

    return $query;

}

在水平表中,可以有多个具有相应“dbid”的行。 我还想添加一个与'dbid'关系的第二个表,它也可以有多个具有相同'dbid'的行,并且它需要更多的字段,然后只需要来自leveltable的'level'字段。

0 个答案:

没有答案