そんなに数は多くないのですが、
UPDATE shop SET pay = true WHERE id = 2289 AND id = 2291 AND id = 2292 AND id = 2348 AND id = 2604
こんなカンジで特定のIDのデータを一括修正したいのですが、エラーは返ってこないものの、なぜかFALSE(0)と値が入ってしまいます。この書き方の何がいけないのでしょうか
id が 2289 であり2291でもあり2291でもあり2348でもあり2604でもある場合のみ、そのレコードのpayをtrueに変更するという命令になっていますので、そんなレコードはないという返事になっています
この場合はORを使います
UPDATE shop SET pay = true WHERE id = 2289 OR id = 2291 OR id = 2292 OR id = 2348 OR id = 2604
INを使うとスッキリします
UPDATE shop SET pay = true WHERE id IN (2289, 2291, 2292, 2348, 2604)