このクエリは、where で複数のチェックを使用して DB テーブルを更新しています。問題は、その週と日にコンサルタント ID に対して欠落しているすべての行を挿入したいということです。
UPDATE agenda
SET comments = 1
WHERE term_id = 31
AND day IN ( 1, 3 )
AND week IN ( 1, 3, 4 )
AND consultant_id IN ( 1, 2, 3)
たとえばconsultant_id=3 and week=1 which has no day=2
、 データベースに を持つ行があり、 を持つ新しい行を挿入したいとしますconsultant_id=3 ,week=1, day=2 and comments=1
。それを含む行 consultant_id=3 ,week=1, day=2 exist
が単にコメントを更新する必要がある場合。
ON DUPLICATE KEY
この関連チケットを使用しようとしたこと
しかし、問題は、すべてconsultant_id
のweek
、day
、 が配列にあり、これら 3 つに基づいてコメントを更新する必要があることです。
どんな助けでも本当に感謝します。