【发布时间】:2018-11-12 09:40:13
【问题描述】:
我有两个相关的表,我必须通过连接查询显示来自这两个表的数据。
我有这个GridView,当我必须进行搜索时它正在“工作”,这意味着如果我必须从连接表中搜索一个字段,它可以工作并显示正确的结果,但我无法显示两个表中的所有列。
这是错误:
CDbCommand 未能执行 SQL 语句:SQLSTATE[42S02]: Base 未找到表或视图:1051 未知表“pratache”。 SQL 执行的语句是:SELECT pratich.* FROM
pratichetLEFT JOIN clienti ON id_cliente = clienti.id LIMIT 10
如您所见,pratiche 之后有 t,因此查询失败。
有什么问题?
public function search()
{
// @todo Please modify the following code to remove attributes that should not be searched.
$criteria=new CDbCriteria;
$criteria->select = "pratiche.*,clienti.*";
$criteria->join='LEFT JOIN clienti ON id_cliente = clienti.id';
$criteria->compare('id_pratiche',$this->id_pratiche,true);
//this is the fild that should be shown(from the joined table)
$criteria->compare('codice_fiscale',$this->codice_fiscale,true);
$criteria->select = "pratiche.*";
return new CActiveDataProvider($this, array(
'criteria'=>$criteria,
));
}
【问题讨论】:
-
您的表格是否使用表格前缀?
-
@rob006 不是,但我明白为什么它不起作用!
标签: mysql join search yii yii1.x