使用Yii的ORM时如何处理别名?

使用Yii的ORM时如何处理别名?,yii,Yii,我有这段代码,虽然文档告诉您在大多数情况下应该做什么,但它们没有告诉您在使用字符串作为参数的SQL函数时应该做什么 我做了以下的想法,认为这会起作用,但因为文档没有涵盖所有情况,我不是100%确定。下面的命令行吗 $sql = "SELECT `prod_id` AS `id` , LOWER( `prod_iso_code_5` ) AS `prod_code` FROM `prod_data`"; 它不会输出您所期望的内容。因为在查询生成器中,您使用了prod_iso_code_5

我有这段代码,虽然文档告诉您在大多数情况下应该做什么,但它们没有告诉您在使用字符串作为参数的SQL函数时应该做什么

我做了以下的想法,认为这会起作用,但因为文档没有涵盖所有情况,我不是100%确定。下面的命令行吗

$sql = "SELECT  `prod_id` AS  `id` , LOWER(  `prod_iso_code_5` ) AS  `prod_code` FROM `prod_data`";

它不会输出您所期望的内容。因为在查询生成器中,您使用了prod_iso_code_5作为字符串。它被评估为LOWER函数的字符串。如果要将查询中给定的prod_data.product_iso_code_5列的值降为小写,则必须仅使用product_iso_code_5或将列名换行到`倒勾字符'内

$result =  $this->mydb->createcommand()
            ->select(array('prod_id AS id', 'LOWER("prod_iso_code_5") as prod_code')
            ->from('prod_data')
            ->queryAll();
$result =  $this->mydb->createcommand()
            ->select(array('prod_id AS id', 'LOWER(`prod_iso_code_5`) as prod_code')
            ->from('prod_data')
            ->queryAll();