CakePHP4でサブクエリをFrom句で利用する
// サブクエリの作成
$subquery = $this->Model名->find()
->select([
'エイリアス名' => '値'
]);
// サブクエリを利用してデータを取得する
$query = $this->Model名->find()
->select([
'サブクエリ名.値'
])
->from([
'サブクエリ名' => 'サブクエリを格納した変数'
])
->enableHydration(false)
->all()
->toArray();
// 使用例
$subquery = $this->Users->find()
->select([
'user_name' => 'name'
]);
$query = $this->Users->find()
->select([
'subquery.user_name'(エイリアスを付けても取得可)
])
->from([
'subquery' => $subquery
])
->enableHydration(false)
->all()
->toArray();