2009-06-08 109 views
1

我有一个表称为篮子这些列:如何在MS Access 2007中嵌套这两个SQL查询?

  • 篮(筐的名称)
  • 色(篮色)
  • 苹果(苹果的篮子数)
  • 香蕉
  • 桔子(桔子的篮中的数目)
  • 梨(梨篮中的编号)(香蕉的篮子数)
  • 桃子(桃的篮中的数目)

随着查询1,我确定果实的总数在每个篮子和我还包括每个篮子的颜色:

SELECT basket, colour, apples+bananas+oranges+pears+peaches AS fruit 
FROM baskets; 

查询1由三列组成:

  • 颜色
  • 果(总NU在篮子的水果MBER)

随着QUERY2,我确定果实的平均数目有在各颜色的所有筐通过从查询1的结果绘制信息:

SELECT DISTINCT 
     candidate.colour, 
     candidate.fruit 
      (SELECT AVG(fruit) 
       FROM Query1 AS average 
       WHERE average.colour = candidate.colour) AS fruit 
    FROM Query1 AS candidate; 

QUERY2由

  • 颜色
  • 水果
:两列

是否可以嵌套这些查询,以便我可以只用一个查询来获取Query2的结果?

您的帮助将不胜感激。谢谢。

回答

2
SELECT colour, AVG(apples+bananas+oranges+pears+peaches) AS fruit 
FROM baskets 
GROUP by colour; 
+0

谢谢,亚历克斯。这样可行。 – systemovich 2009-06-08 22:54:09

1

如果通过篮子的颜色要总水果,你会做这样的事情:

SELECT colour, SUM(apples+bananas+oranges+pears+peaches) AS totalfruit 
FROM baskets 
GROUP By colour 
+0

谢谢,DJ。我犯了一个错误。我的意思是平均数量的水果。 – systemovich 2009-06-08 22:52:03