如果行不存在,我想设置查询
IF NOT EXISTS (SELECT id FROM table WHERE id=1)
INSERT INTO table (id, name) VALUES (1,'abx');
如果 id!=1 则插入值并检查行是否已存在
有什么解决办法吗?
提前致谢...
终于解决了
INSERT INTO table (id, name) VALUES (1,'abx') ON DUPLICATE KEY UPDATE id = 1;
感谢您的支持
最佳答案
您的数据类型存在问题 - 在 SELECT
中,将 id 与数字进行比较(id = 1
- 不带撇号),而在 INSERT
中,将 id 与数字进行比较被写成一个字符串(用撇号:'1'
)。
关于mysql 查询不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8668058/