codeigniter mysql视图与查询
我正在使用Codeigniter进行开发,当涉及到复杂的数据库查询时 我正在使用codeigniter mysql视图与查询,mysql,performance,codeigniter,activerecord,query-optimization,Mysql,Performance,Codeigniter,Activerecord,Query Optimization,我正在使用Codeigniter进行开发,当涉及到复杂的数据库查询时 我正在使用 $this->db->query('my complicated query'); 然后使用$query->result()将其转换为对象数组 到目前为止,它是非常好和有用的 现在我的问题是 如果我想创建mysql视图并从中选择,该怎么办?意志 $this->db->from('mysql_view') 是否将mysql视图视为一个表 如果我这样做了,在性能上会有什么不同吗?视图是否比正
$this->db->query('my complicated query');
然后使用$query->result()将其转换为对象数组代码>
到目前为止,它是非常好和有用的
现在我的问题是
如果我想创建mysql视图并从中选择,该怎么办?意志
$this->db->from('mysql_view')
是否将mysql视图视为一个表
如果我这样做了,在性能上会有什么不同吗?视图是否比正常的数据库查询快
Codeigniter和MYSQL数据库处理复杂查询的最佳实践是什么?据我所知,ActiveRecord只是一个查询生成器,而且在一些测试中甚至会稍微慢一点
提前谢谢你的建议
MySQL视图的查询方式与表相同,顺便说一句,表和视图不能共享相同的名称
根据您在视图中使用的查询,视图可以在内部缓存,因此从长远来看,它们会更快
在这种情况下,最好的做法是使用您觉得对您自己和您的团队容易使用的任何东西,我个人坚持使用$this->db->query()代码>我发现,将此类简单查询更改为具有一些高级功能(如子查询或其他使用CI query builder很难和/或不可能实现的功能)更容易。我的建议是坚持一种查询方式——如果您使用->query()
,那么就在任何地方使用它们;如果您使用查询生成器,那么就在任何可能的地方使用它来获得结果
感谢@Vlakardos的回复,我只想确认$this->db->from(“”)
是否会正常查看名称?CodeIgniter ActiveRecord没有任何魔力,它只是为您构建一个查询字符串,所以是的,它会