您应该将逻辑添加到应用程序服务器或数据库

时间:2018-02-23 17:03:59

标签: java sql database appserver

假设我在5个不同的城市有5家商店。我想知道这个月每个城市每天的收入是多少。

我有两个选择。

1)App服务器上的逻辑:

for (each city)
  for (each day) {
      Query(city, day);
  }
}

这将导致城市*天查询。

2)数据库服务器上的逻辑:  添加一个复杂的聚合查询。

首选哪两个选项?寻找两者的利弊? 哪一个看起来更具可读性?

1 个答案:

答案 0 :(得分:0)

对于来自同一个表的数据多次查询数据库没有任何意义(据我所知,它会是这样)并且当数据库可以一次性为您执行此操作时自己处理结果。您将对网络,数据库和应用程序施加不必要的压力。