选择语言 :

 Driver_Database_Driver_MySQL::format_select_adv

格式化高级查询参数到select里

null Driver_Database_Driver_MySQL::format_select_adv( )
File: ./drivers/database/mysql/mysql.class.php
protected function format_select_adv(&$builder)
{
    if (empty($builder['select_adv']))
    {
        return;
    }

    foreach ($builder['select_adv'] as $item)
    {
        if (!is_array($item))continue;

        if (is_array($item[0]))
        {
            $column = $item[0][0];
            $alias  = $item[0][1];
        }
        else if (preg_match('#^(.*) AS (.*)$#i', $item[0] , $m))
        {
            $column = $this->_quote_identifier($m[1]);
            $alias  = $m[2];
        }
        else
        {
            $column = $this->_quote_identifier($item[0]);
            $alias = $item[0];
        }

        // 其它参数
        $args_str = '';
        if (($count_item=count($item))>2)
        {
            for($i=2;$i++;$i<count($count_item))
            {
                $args_str .= ','. $this->_quote_identifier($item[$i]);
            }
        }

        $builder['select'][] = array
        (
            Database::expr_value(strtoupper($item[1]).'('.$this->_quote_identifier($column.$args_str).')'),
            $alias,
        );
    }
}