私は2つのテーブルを持っています。表1はproducts_cat_arabic
であり、表2はproducts_arabic
である。テーブル内のすべての行を返し、一致するIDを持つ行の数を別のテーブルから数えようとします。
それぞれcat
の名前をproducts_cat_arabic
から、関連する番号のcat_id
から取得する必要があります。 これは私のクエリです:
<?php
$getCats = $db->query(
'SELECT c.*, COUNT(*) as num_items
FROM products_cat_arabic c
JOIN products_arabic q ON q.id = c.id
GROUP BY c.id'
);
while ($gCat = mysqli_fetch_array($getCats)) {
?>
<li class="col-xs-12 col-md-4 col-lg-3"><a href="#"><?php print $gCat['cat_name']; ?>
</a><span
title="products number"><?php print $gCat['num_items']; ?></span></li>
<?php
}
?>
は、各猫の名前を得たが、製品の数が間違っています。
編集:カウント権利を得たが、私は最後のものにすべての製品を持っていないだけのように2を見ることができる3カテゴリがあり
SELECT c.cat_name, COUNT(*) as num_items
FROM products_cat_arabic c
JOIN products_arabic q ON q.cat = c.id
GROUP BY c.id
'SELECT cat_name、COUNT(*)as .... GROUP BY cat_name' *とGROUP BY IDの選択が間違っていると思われます – Mihai
どのようなエラーが表示されましたか? –
私はエラーが発生しない私は間違った数を得る –