Yii2列
问题描述:
,导致该错误的查询是以下:Yii2列
$query = $model::find()
->leftJoin('reseller_config', 'reseller_rate.resellerref = reseller_config.resellerref')
->select('reseller_rate.*, reseller_config.resellerref AS rate_increase');
生成的SQL如下:
SELECT COUNT(*) FROM `reseller_rate` LEFT JOIN `reseller_config` ON reseller_rate.resellerref = rc.resellerref WHERE `resellerref`=56
我知道它不工作,因为字段命名相同,它不知道要抢谁。
有谁知道我该如何解决这个问题?
答
$query = $model::find()
->leftJoin('reseller_config', 'reseller_rate.resellerref = reseller_config.resellerref')
->select('reseller_rate.*', 'reseller_config.resellerref AS rate_increase');
您可以查询bulider使用:
$model = (new Query())
->select(['reseller_rate.*', 'reseller_config.resellerref AS rate_increase')
->from('reseller_rate')
->leftJoin('reseller_config', 'reseller_rate.resellerref = reseller_config.resellerref')
->all();
在选择方法,则需要调用'reseller_rates',而在加入您的呼吁'reseller_rate'(无S) – gmc
对不起,这是一个错字将立即编辑 - 在我的代码中是正确的 – Kyle
'WHERE'resellerref' = 56'从哪里来??它不在查询中! –