我对SQL比较陌生,之前只处理过非常基本的语句。
表A
- id
- clubid
表B
我想要做的是如下,
SELECT * from applications WHERE clubid = $id
然后结果我需要按照
的方式运行查询 SELECT Sum(n), Sum(p), Sum(k), Sum(mg) from productsapplied where area = $area
我知道这第二个陈述是错误的,因为它将是每行不可能的总和,所以我试图找到一种方法将两个查询链接在一起。正如我所说的那样,我是初学者,我已经看过Sum和内部连接,但不能理解它。
如果需要更多详细信息,请与我们联系!非常感谢 !
答案 0 :(得分:1)
您需要在查询中添加GROUP BY子句。
SELECT applications.id, applications.clubid, sum(products.n), sum(products.p)
FROM applications
JOIN productsapplied AS products
ON productsapplied.applicationid = application.id
GROUP BY application.id
WHERE clubid = $id AND products.area = $area;
请注意,您需要适当地设置GROUP BY。我假设我们正在为每个applicationid求和。我也没有完成每一栏的每一个细节,因为我认为你可以自己解决这个问题。
答案 1 :(得分:0)
我认为这可能是您尝试做的事情:
SELECT Sum(productsapplied.n), Sum(productsapplied.p), Sum(productsapplied.k), Sum(productsapplied.mg)
FROM productsapplied
JOIN applications
ON productsapplied.applicationid = applications.id
WHERE productsapplied.area = $area
AND applications.clubid = $id