0

我有 500 张表格,所有表格都包含“销售额”字段中的美元金额记录。

以下是每张桌子的绿色物品总销售额:

$tabletotal = mysql_query("SELECT sum(sales) FROM databasename.$tablename
WHERE type = 'green' AND descr  LIKE '%SOLD%'   ");
$row = mysql_fetch_assoc($tabletotal);
$answer= $row['sum(sales)'];

因此,如果一张特定的桌子有 4 个绿色物品,它们的售价分别为 4 美元、6 美元、7 美元和 3 美元,那么我上面得到的答案是 20 美元。

现在,我不知道该怎么做,就是获取所有 500 个表中所有绿色项目的总数。因此,如果表 1 总共有 20 美元,表 2 总共有 36 美元,表 3 总共有 15 美元,依此类推,我想把所有表的总数加在一起(在这种情况下是 71 美元,但对于显然有 500 张桌子)。

有什么帮助吗?

4

1 回答 1

0

可能最好使用 for 循环:

$tables = array('tbl1', 'tbl2', 'tbl3', ..., 'tbl499');
$total = 0;
foreach ($tables as $t)
{
    $tabletotal = mysql_query("SELECT sum(sales) tot FROM databasename.$t WHERE type = 'green' AND descr LIKE '%SOLD%'");
    $row = mysql_fetch_assoc($tabletotal);
    $total += $row['tot'];
}

或者,您可以使用 s 生成一个巨大的 SQL 查询UNION,但它本质上是一样的。

正如 Dream Eater 所说;首先,您不应该处于这种情况。

于 2013-03-18T00:58:13.660 回答