从 Codeigniter Active Record 中的子查询中选择
Posted
技术标签:
【中文标题】从 Codeigniter Active Record 中的子查询中选择【英文标题】:SELECT from subquery in Codeigniter Active Record 【发布时间】:2015-07-07 06:03:28 【问题描述】:我将如何在 Codeigniter ActiveRecord 中执行以下查询:-
SELECT *,
(SELECT
image_path
FROM
image
WHERE
image_table = 'model'
AND image_table_id = model_id
GROUP BY image_table_id
LIMIT 1) AS ModelImg
FROM
(SELECT
*
FROM
vw_newcars
where offer_table = 'derivative'
order by offer_order
) x
WHERE make_name = 'Fiat'
group by offer_table_id
limit 12
我遇到的问题是如何从 Active Record 中的子查询中进行选择。
我在文档中没有看到 from_select
函数或任何类似的东西。
【问题讨论】:
你用的是什么版本的codeigniter? 【参考方案1】:我设法通过将from
sub_query 放入初始选择语句来使查询工作:
$this->db->select("*,
(select image_path from image where image_table = 'model' and image_table_id = model_id
group by image_table_id limit 1) as ModelImg FROM
(SELECT * FROM $view where offer_table = 'derivative' order by offer_order) x");
【讨论】:
我更喜欢 $this->query($sql);一次运行完整的查询以上是关于从 Codeigniter Active Record 中的子查询中选择的主要内容,如果未能解决你的问题,请参考以下文章
Codeigniter Active Record使用多个主键选择多行
CodeIgniter Active Record 一次删除多条记录
CodeIgniter Active Record 查询 WITH/ 子查询