使用MYSQL更新同一标志两次
我有一个名为使用MYSQL更新同一标志两次,mysql,Mysql,我有一个名为chart的表,有两列,分别是UPC\u REPORT\u ID和UPC\u FLAG 我正试图准备一个查询来更新UPC\u FLAG=1如果UPC\u REPORT\u ID=1,同时我想更新UPC\u FLAG=0其中UPC\u REPORT\u ID=2 请给我一些建议什么时候使用 UPDATE chart SET UPC_FLAG = (CASE WHEN UPC_REPORT_ID=1 THEN 1 ELSE CASE WHEN UPC_REPORT_ID !=2 THEN
chart
的表,有两列,分别是UPC\u REPORT\u ID
和UPC\u FLAG
我正试图准备一个查询来更新UPC\u FLAG=1
如果UPC\u REPORT\u ID=1
,同时我想更新UPC\u FLAG=0
其中UPC\u REPORT\u ID=2
请给我一些建议什么时候使用
UPDATE chart SET UPC_FLAG = (CASE WHEN UPC_REPORT_ID=1 THEN 1 ELSE CASE WHEN UPC_REPORT_ID !=2 THEN 0 END END)
更新。。。当UPC\U报告=1时设置UPC\U标志=案例,当UPC\U报告ID为2时设置1,然后设置0结束,其中
--dmg与IF和Barmar的答案一样
UPDATE chart
SET UPC_FLAG = IF(UPC_REPORT_ID = 1,1,IF(UPC_REPORT_ID <> 2,2,0))
更新图表
设置UPC_标志=IF(UPC_报告_ID=1,1,IF(UPC_报告_ID 2,2,0))
所有满足UPC\u REPORT\u ID=1的行也将满足UPC\u REPORT\u ID=2
条件。最终,所有UPC\u标志
都将设置为相同的值
UPDATE chart
SET UPC_FLAG = IF(UPC_REPORT_ID = 1,1,IF(UPC_REPORT_ID <> 2,2,0))