嘿伙计我需要一些关于关联数组的帮助
这就是我所拥有的。
我有两个名为users的mysql表...这样设置。[ MYSQL DB users] *************************************** Id------name-------empnum------amount 1 ------testa------123456------40.00 2 ------testb------652526------300.00 3 ------Testc------919825------100.00 4 ------Testd------354694------50.00
另一个db就是这样设置的。
[ MYSQL DB po ] *************************************** Id------ponum------reason----empnum---------total------reason 1 ------1234------testa------123456---------40.00------Demo 2 ------1235------testb------652526--------300.00------Demo 3 ------1236------Testc------919825--------100.00------other 4 ------1237------Testd------123456---------50.00------Demo
我需要做的是从“用户”数据库中选择每个用户,然后在“Po”db中找到它们
然后我需要将他们花费的总金额(在PO中)加起来,并将其与用户db的金额进行比较。
我有这个javascript条形图,我想在每个人名旁边显示,以向他们展示他们花了多少接近100%。
<div id="progressBar<? echo $id; ?>" class="default"><div></div></div>
<script>
progressBar(<?php echo round(($sum/$total) * 100); ?>, $('#progressBar<? echo $id; ?>'));
</script>
我的问题是 我该如何解决这个问题。我的第一个想法是使用关联数组并从用户获取数量和empnum,然后从mysql中提取该信息,然后将其与总数进行比较....点a和b之间的某些地方我迷路了。我对A-array如何使用mysql和两个表格没有很好的理解。 从我发现它看起来我将不得不使用每个循环。?? 我是以错误的方式解决这个问题..有更简单的方法吗???
答案 0 :(得分:1)
您可以在一个查询中执行大部分操作:
SELECT u.amount, SUM(p.total) 'po_total'
FROM users u LEFT JOIN po p
ON u.empnum = p.empnum
GROUP BY p.empnum
然后:
$percentage = $row['po_total'] / $row['amount'];