t1.id = t2.idなどを使用してテーブルのフィールドを別のテーブルのカウントから更新する方法は知っていますが、 WHERE節でLIKE STATEMENTを使用する必要があります。LIKEステートメントを使用している間に別のテーブルのカウントに基づいてテーブルを更新する方法
これは私がやりたかったものです。
UPDATE `CATEGORIES`
SET `num_listings` = (SELECT COUNT(*)
FROM `LISTINGS`
WHERE `LISTINGS`.`CATEGORY` LIKE
ws_concat('', "%-", `CATEGORIES`.`ID`, "-%"));
(例:私は、フィールド名CATEGORYとしてリスティングテーブル内-25-として格納されCATEGORYを持っている)
私は私がここにws_contactを使用できないことを理解し、それを達成するための別の方法は何ですか?
ありがとうございます。
あなたのデータベース構造を正規化して、コメントを追加した場合、クエリのこの種のはおそらく容易になるだろう'listings_categories'の新しいアソシエーションテーブル –
まあ、何千ものエントリを持つ既存のウェブサイトのバグの修正やアップデートに取り組んでいるので、これは現在できません。 –