我试图获得每个类别的产品销售总数,尽管所使用的数据库结构似乎并不适合这一点。
我已经达到了这样的程度,即我在一个类别(另一个表)中拥有产品 ID(它是自己的表),而这些类别(另一个表)只被购买过(仍然是另一个表)。因此,遍历类别,我选择订单表中的 ID 并尝试计算行数。我最终得到了每个项目的项目数,但是我尝试合并并计算它们的任何方式都行不通。
$SQL = "SELECT * from PRODUCTS WHERE CATEGORY LIKE '%-$thiscat-%' AND STATUS = 'Active' AND STOREITEM = 'Yes' AND ID IN ($item_ids)";
$result = mysql_query( $SQL );
while( $row = mysql_fetch_array( $result ) ) {
$sql_active_accounts = "SELECT count(ID) FROM ORDERS WHERE ITEM_NUMBER ='$row[ID]'";
$res_active_accounts = mysql_query($sql_active_accounts);
while($row_active_accounts = mysql_fetch_row($res_active_accounts)){
print_r($row_active_accounts);
}
};
print_r 给出了一个特定类别的示例,该类别仅售出 3 件商品,但有些商品售出不止一次:
Array ( [0] => 2 ) Array ( [0] => 3 ) Array ( [0] => 1 )
这是正确的,因为出售了三件商品,出售了这些次数。而 array_sum 对此不起作用。我似乎无法做任何事情来让这些数字相加。我试图只计算特定的行,并且真的不关心它们中的数据以获得最终结果。
我知道循环中的 SQL 调用是一个坏主意,但这是一个不会经常运行的管理区域脚本。