在我的第一个查询中,我循环遍历status
open
channel_id
和23
field_id_299
的所有记录,获取列field_id_299
。字段entry_id
是另一个channel
的{{1}}。
第二个查询,然后使用此field_id_299
AS entry_id
,获取列field_id_36
。
是否可以在一个查询中完成所有这些操作?
$query = ee()->db->select('cd.field_id_299')
->from('exp_channel_titles AS ct')
->join('exp_channel_data AS cd', 'ct.entry_id = cd.entry_id', 'left')
->where('ct.status', 'open')
->where('ct.channel_id', '23')
->get();
$query = ee()->db->select('field_id_36')
->from('exp_channel_data')
->where('entry_id', $entry_id)
->get();
答案 0 :(得分:0)
尝试以下
$query = ee()->db->select('cd1.field_id_36')
->from('exp_channel_titles AS ct')
->join('exp_channel_data AS cd', 'ct.entry_id = cd.entry_id', 'left')
->join('exp_channel_data AS cd1', 'cd.field_id_299 = cd1.entry_id', 'left')
->where('ct.status', 'open')
->where('ct.channel_id', '23')
->get();