SELECT查询排除cakephp 3中的列

时间:2016-12-24 12:12:34

标签: php mysql cakephp-3.0

我有一个包含以下列的数据库表:

  • ID
  • COUNTRY_ID
  • 名称
  • 电子邮件

我想在id查询中选择所有列,不包括country_idSELECT

我尝试了以下内容:

$getOldvalue = $myTable->find()->where(['country_id' => 10])->first()->toArray();
$notAllow = ['id','country_id'];
foreach ($notAllow as $no) {
    if(($key = array_search($no, array_keys($getOldvalue))) !== false) {
        unset(array_keys($getOldvalue)[$key]);
    }
}

这会返回idcountry_id。如何选择没有idcountry_id的所有列?

1 个答案:

答案 0 :(得分:2)

要限制提取的字段,您可以使用select()方法,如下所示:

$getOldvalue = $myTable->find()->select(['name','email'])->where(['country_id' => 10])->first()->toArray(); 

了解更多详情see documentation here. 我希望这对你有用。