2010-01-14 26 views
0

我有一个非常复杂的查询(mysql + php),我想知道除了使用SUM(x)之外,对表的列和行进行求和的最简单方法。行和列SUM

也许一个JavaScript可以帮助。 在此先感谢。

+1

JavaScript几乎可以永远不会帮助服务器端的东西。 – 2010-01-14 16:14:07

+0

你对'总括**和**行'是什么意思?你想总结你从数据库中抓取的每一行的所有字段? – Veger 2010-01-14 16:15:22

+0

SUM(col)'有什么问题? – kennytm 2010-01-14 16:19:49

回答

0

我会建议在MySQL中使用的SUM()函数。不使用它的唯一原因是如果你有一些基于其他值的复杂计数。然后我会在PHP中进行计数。这里是一个例子:

$result = mysql_query("... query here ..."); 
$cats = 0; 
$dogs = 0; 
while($row = mysql_fetch_array($result)) 
{ 
    if($row['type'] == 'cat') 
    { 
      $cats++; 
    } 
    else 
    { 
      $dogs++; 
    } 
} 
echo "Cats: $cats Dogs: $dogs"; 
0

我会在查询本身做到这一点。如果您发布查询,我可以提供更多信息。

0

这是查询,我想总结列和行。 (行是订购了一年中每个月的增值经销商“svago”和“LAVORO”,而COLS是全年相同的值)

$q = "SELECT DISTINCT DATE_FORMAT(TIMESTAMP, '%m%Y') AS derp FROM main LIMIT 0 , 30"; 
$qq = mysql_query($q); 

while($res = mysql_fetch_array($qq)) { 

$where = $res['derp']; 

$q = "SELECT timestamp, SUM(moto) + SUM(mary) AS svago, SUM(lavoro) + SUM(affitto) AS lavoro FROM main WHERE DATE_FORMAT(timestamp, '%m%Y') = $where";