Php 我应该在模型中使用一个大型sql查询,还是将其分解为较小的查询?
我正在为我的一个项目使用codeigniter,现在我有一个包含项目信息的表,我在一个特定视图中显示所有项目 现在,我还希望同一个视图显示有关项目的其他相关信息,例如视图的数量以及关联的标记。但是这将需要模型中的多个连接(这将需要我修改现有的查询…),但是它将使视图不必直接调用模型Php 我应该在模型中使用一个大型sql查询,还是将其分解为较小的查询?,php,sql,codeigniter,join,Php,Sql,Codeigniter,Join,我正在为我的一个项目使用codeigniter,现在我有一个包含项目信息的表,我在一个特定视图中显示所有项目 现在,我还希望同一个视图显示有关项目的其他相关信息,例如视图的数量以及关联的标记。但是这将需要模型中的多个连接(这将需要我修改现有的查询…),但是它将使视图不必直接调用模型 如果我简单地分解查询,并有两个与视图中的其他信息相关的单独查询,会获得更好的性能吗?我发现这一点更清楚,但我想知道它是否更慢,因为我在循环中调用每个项目的模型 为什么不使用 那你就百分之百肯定了。此外,如果结果“接近
如果我简单地分解查询,并有两个与视图中的其他信息相关的单独查询,会获得更好的性能吗?我发现这一点更清楚,但我想知道它是否更慢,因为我在循环中调用每个项目的模型 为什么不使用 那你就百分之百肯定了。此外,如果结果“接近”,您可以选择更适合您的编程逻辑的选项
p、 您还可以将对模型的多个调用循环到控制器中的一个数组(如$projects)中,并将该变量传递给视图,因此在任何一种情况下,“视图”都不会直接调用“模型”。一般来说,尽量避免在循环中查询或从视图调用模型。直觉告诉我们,最好只使用一个查询,让数据库处理连接。如果没有其他问题,这将节省应用程序和数据库之间的多个查询开销。然而,也许CodeIgniter有一些特定的特性,使它成为一个更糟糕的选择。我决定使用更大的查询-我只是创建了视图来最小化sql的复杂性。谢谢各位。