【发布时间】:2014-09-23 02:58:22
【问题描述】:
我有以下表格:
- 表'Category_sub' -
- Subcategory_id
- Subcategory_maincatid
- 子类别名称
- 表'Products_categories' -
- Products_categories_product_id
- Products_categories_category_id
- 表“产品”-
- Products_id
- Products_itemnumber
- Products_subitemnumber
我想显示类别的名称和该类别中的产品数量。
每个产品都有一个项目编号(不是唯一的)和一个子项目编号(唯一的)。将使用子项编号 适用于同一产品的不同颜色/类型。
我有以下脚本:
<?php
$sql= $db->prepare("
SELECT *,
COUNT(DISTINCT Products_itemnumber) AS Products_total
FROM
Category_sub,
Products_category,
Products
WHERE
Subcategory_maincatid=:cat_id
AND Subcategory_id=Products_categories_category_id
AND Products_categories_product_id_id=Products_id
GROUP BY Subcategory_name
");
$sql->bindValue(':cat_id', $_GET['cat_id'], PDO::PARAM_INT);
$sql->execute();
$sql_fetch= $sql->fetchAll(PDO::FETCH_ASSOC);
foreach($sql_fetch as $category) {
echo $category['Subcategory_name'] ."(". $category['Products_total'] .")<br />";
}
?>
上面的脚本不能正常工作。我有两个具有相同 itemnumber 的产品,脚本应该 将其视为一种产品。上面的脚本计算了两个产品。
【问题讨论】: