繁体   English   中英

如何从MySQL的多个表中获取值?

[英]How to fetch values from more than one table from mysql?

如何从各种表中获取行并执行求和运算?

例如表1:

-------------------
id        name     
-------------------
1         tree1    
-------------------
2         tree2    
-------------------
3         tree3    
-------------------
4         tree4    
-------------------

表2:叶子

--------------------------------
tree_id        name        value
--------------------------------
1              test1          5
--------------------------------
1              test2          3   
--------------------------------
2              test3          7
--------------------------------
4              test4          9
-------------------------------- 

所需输出:

select tree.id,tree.name,sum(leaf.value) as total from tree,leaf where leaf.tree_id=tree.id

Array([0] => Array([id]=>1, [name]=>tree1, [total]=>8),
[1] => Array([id]=>2, [name]=>tree2, [total]=>7)
[2] => Array([id]=>3, [name]=>tree3, [total]=>0)
[3] => Array([id]=>4, [name]=>tree4, [total]=>9))
SELECT tree.id, tree.name, sum(leaf.value) as total
FROM tree
LEFT JOIN leaf
  ON leaf.tree_id = tree.id
GROUP BY tree.id
SELECT tree.id, tree.name, sum(leaf.value) as total
FROM tree
left  join leaf
  ON leaf.tree_id = tree.id group by tree.id

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM