[英]How to write this join query in cdbcriteria?
I've been stuck for three hours and I cannot find a solution, I want to show only the name of those packages which are in the business_package
table in my dropdown. 我被困了三个小时,找不到解决方案,我只想显示下拉菜单中
business_package
表中那些软件包的名称。 My sql query which is working fine I do not know how to write in cdbcriteria, I tried to write in cdbcriteria, but I get error every time. 我的sql查询工作正常,我不知道如何用cdbcriteria编写,我尝试用cdbcriteria编写,但是每次都会出错。 Given below is my sql query.
下面给出的是我的sql查询。
select package.id
from package
join business_package on package.id = business_package.package_id
I want to use the results in given below drop down list. 我想使用下面给出的下拉列表中的结果。
$this->widget('ext.select2.ESelect2',array(
'name'=>'ReviewPackage[Package_id]',
'data'=>CHtml::listData(Package::model()->findAll($criteria), 'id', 'package_name'),
//the whole available list of those package which are in business package table.
'htmlOptions'=>array(
'placeholder'=>' search Business name?',
//'options'=>$options, //the selected values
// 'multiple'=>'multiple',
'style'=>'width:530px',
),
));
See http://www.yiiframework.com/doc/guide/1.1/en/database.query-builder 参见http://www.yiiframework.com/doc/guide/1.1/en/database.query-builder
Something like that should do it: 这样的事情应该做到:
$criteria = new CDbCriteria;
$criteria->alias = 'package';
$criteria->select = 'package.id';
$criteria->join='LEFT JOIN business_package ON business_package.package_id=package.id';
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.