永发信息网

SQL 当记录不存在时插入insert if not exists

答案:6  悬赏:80  手机版
解决时间 2021-02-16 06:11
SQL 当记录不存在时插入insert if not exists
最佳答案
表是空的当然添加不了数据,因为exists存在谓词返回的是布尔值TRUE和FALSE,你的select * from clientswhere id = 10345 是空值;那么WHERe not exists (select * from clientswhere id = 10345)的意思是限定条件 WHERe 不存在空值,但是事实上表里此时正是空,所以查询不符合WHERe条件,所以insert 也是空,就没记录了。

还有,你的语句
INSERT INTO clients(id, name, type)SELECT 10345, 'IBM', 'advertising'…
select 后面跟的不是字段名,而是值,为什么还要用INSERT INTO…SELECT ?
直接insert into…values(…)不就好了?
全部回答
这样写肯定是不对的。
WHERe not exists (select * from clients
where id = 10345); 我觉得where not exists这有问题吧?exists是个栏位?后面怎么是select * from 呢?应该是指定一个栏位,WHERe not exists (select exists from clients where id = 10345)
因为表中没有数据,
insert into clients
select ...
FROM clients
当然没有数据返回,insert自然也就没有数据可以插入了。
这个好像必须用程度段,纯粹的sql语句还真实现不了
sql导出建表语句的sql文件你看过吗?前面就是判断表是否存在,然后建表
就是那些if not exists 之类的,你照着改一下就行了,手头没有sql,没办法给你贴语句
INSERT INTO clients
SELECt 10345, 'IBM', 'advertising'
FROM dual
WHERe not exists (select * from clients
where id = 10345);

这个可以实现
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
梦见自已和别人老婆上床,什么意思
微信没有绑定手机,没有设置微信号,没有绑定
影视商务宾馆在什么地方啊,我要过去处理事情
中国近现代书画 中国古代书画 中国当代书画
执法机关工作人员在查询单位存款时,()。A.只
玉镯和串珠戴在一起会发出声响正常吗
智慧的慧字有什么组词
不能清除牙菌斑的方法是A.用牙签B.用牙线C.用
溥幼嗜学是哪篇文言文
天天酷跑部落土豪称号
4号足球的直径是多少?
【中级护师报考条件】主管护师报考工作年限怎
camtasia 9 公共库的资源丢失怎么办
我一朋友被关了10天了,是不是非法拘禁
我不信佛可与戴弥勒佛吗
推荐资讯
塔拉路/纳让路(路口)地址在什么地方,想过去
红米二增强版搜不到蓝牙耳机怎么回事
鑫海不锈钢工程部在哪里啊,我有事要去这个地
7.8+0.3-7.8+0.3简便计算
小区摄像头位置是不是固定的物业有没有权利改
请问义乌火车站到兴中小区……打的要多少钱…
打11平台里的IMCA 有炼金刷钱技能刷了好多钱
新疆夏天白昼有多少时间
华容县岳阳vivo体验店这个地址怎么能查询到,
读我国某城市(10673°E,26.58°N,海拔1223
个子不高,长得不好看,没有气质,身材还行就
【神舟九号】神舟九号飞船全长9米由什么返回
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?