【发布时间】:2016-08-10 06:17:55
【问题描述】:
在 cakephp 3 文件中selecting-all-fields-from-a-table
// Only all fields from the articles table including
// a calculated slug field.
$query = $articlesTable->find();
$query
->select(['slug' => $query->func()->concat(['title', '-', 'id'])])
->select($articlesTable); // Select all fields from articles
我有一个查询,其中包含 5-6 个表,用于连接以将数据与计算字段一起带来。
现在从您的文档示例中传递表实例可以将所有记录与计算字段一起带来。
现在我的问题是,对于所有连接表,我如何将它们的数据与计算列一起带来。
我尝试在 select 中传递加入表类实例,但出现错误。
SQLSTATE[42S22]:找不到列:1054 '字段列表'中的未知列 'Table2.id'
首先创建表类实例,然后必须将它们传递给 select 才能能够带来连接的表数据?
我的查询
$table2 = TableRegistry::get('Table2');
$query = $this->table1
->find('all')
->select(['computed_column' => 'A subquery here'])
->select($this->table1)
->select($table2)
->contain(['Table2','Table3','Table4','Table5'])
->where($conditions);
【问题讨论】:
标签: cakephp-3.0