mysql - mysql。如果值存在则更新 - 否则插入(对于非主值和非唯一值)
问题描述
我有my_table
专栏column1
。
如果有column1='old'
我想更新这些行的行。
否则,我想插入一个新行。
像这样的东西:
IF(
(EXISTS(
SELECT * FROM my_table WHERE column1='old'
)),
(UPDATE my_table SET column1='new' WHERE column1='old'),
(INSERT INTO my_table (column1) VALUES ('new') )
)
我使用MySql
所以我不能IF
在查询的开头使用。
column1
不是唯一的,也不是主要的。所以我不能使用ON DUPLICATE KEY UPDATE
或REPLACE
解决方案
推荐阅读
- rust - 如何获得从最小值到最大值的随机数
- java - 编码蝙蝠热身时遇到问题:max1020
- mysql - 如何根据列中的特定值从表中获取记录
- python - 如何根据python中的添加打印真或假?
- mysql - SQL 选择表中的重复行
- python - 套索回归不会删除高度相关的 2 个特征
- java - 我无法使用 python 脚本编译和运行 java 程序
- .net-core - 仅当在任何其他 Web API 中调用的 Web API 属于同一域时,如何绕过授权过程 - .Net-core 3.1 + Identity-server
- python - python不理解简单的数学问题
- kubernetes - 如何配置 loadBalancer 服务以访问互联网