0

私はテーブルsubcategoryとを持っていlisting_categoryます。テーブルには、とlistin_categoryを含むさまざまなレコードがあります。私が望むのは、特定のカテゴリ= 3のすべてのカウントをテーブルで見つけて、テーブルで更新することです。私がやろうとしていることsubcategorycategorysubcategorycategorylisting_Categorysubcategory

UPDATE `subcategories` SET total_count = ( SELECT count( * )
FROM `listings_category`
WHERE category =3 and subcategory IN (subcategories.id)
WHERE category_id =3 and id=subcategories.id

array の作成に問題がありsubcategories.idます。どんな助けでも大歓迎です。より最適化されたクエリを提案する人がいれば、それは素晴らしいことです。前もって感謝します

4

1 に答える 1

1

私はそれを自分で解決しました:)なぜ人々は意味のある質問に反対票を投じるのか疑問に思います。これが解決策です。

update subcategories, 
       (
         SELECT subcategory,count(subcategory) as count 
           FROM `listings_category` 
          group by subcategory
       ) sb  
  SET subcategories.total_count = sb.count 
where subcategories.id = sb.subcategory
于 2013-08-28T06:33:59.523 に答える