MYSQL多个查询或单个查询 - 哪个更有效率
问题描述:
我有一个3列的表:Animal
,key
,owner
。示例MYSQL多个查询或单个查询 - 哪个更有效率
Cat 1 Bob
Bird 2 Bob
dog 3 Bob
dog 4 Andy
Lizard 5 Andy
Bird 6 Andy
Cat 7 Andy
和每个动物的一个相关表(列键,重量)。例如,表CAT_WEIGHT:
1 12
7 17
我想找到Min
,Max
,Average
,Total
和Count
每个动物类型,但只针对特定的所有者。
这是可以使用单个MYSQL查询来计算这些吗?我知道我可以在多个查询中做到这一点,但我正在寻找最佳方法。
谢谢
答
是的,只用一个查询就可以做到这一点。
所有其他的事情都是平等的,你想尽可能少地使用查询。往数据库的往返行程通常是在程序中遇到的一些更昂贵的事情。
select
animal,
min(weight) min_weight,
max(weight) max_weight,
avg(weight) avg_weight,
sum(weight) tot_weight,
count(weight) cnt_weight
from
your_table
group by
animal
order by animal;
请注意:一或更多的答案可能不再适用于这个问题,因为它已被编辑为与原始问题完全不同。 – bernie 2013-02-15 00:06:48