我的数据库上有4个表; 商家,pay_method,花费和transaction_type。
他们都有一个id和一个标题,除了花费(花费其他人的外键和其他字段,如user_id,comment,...)。
我尝试将所有表的所有信息都用于唯一的user_id!
为了执行它,我尝试了一个不运行的小测试:
public function getSpendingsForUser( $userid )
{
$mercTable = Engine_Api::_()->getDbTable('merchants', 'spendings');
$mercName = $mercTable->info('name');
$table = Engine_Api::_()->getDbTable('spendings', 'spendings');
$spendName = $table->info('name');
$select = $table->fetchAll(
$table->select()
->joinLeft($mercName, "$mercName.merchant_id = $spendName.merchant_id", NULL)
->where('user_id = ?', $userid)
->group('spending_id')
);
return $select;
}
在视图文件中:
foreach($this->spendings as $s) {
var_dump($s->comment);
}
如何正确连接以获取user_id ???
中的所有信息非常感谢!!!
答案 0 :(得分:1)
您应该定义不运行以帮助我们帮助您。但我可以告诉你,你可能需要->setIntegrityCheck(false);
$select = $table->fetchAll(
$table->select()
->setIntegrityCheck(false);
->joinLeft($mercName, "$mercName.merchant_id = $spendName.merchant_id", NULL)
->where('user_id = ?', $userid)
->group('spending_id')
);
加入之前。