文章目錄
- 我們正常的mysql插入數據語句
- 加個前提
- 完結
我們正常的mysql插入數據語句
INSERT INTO `guild_nakadai`.`admin_role_permission` (`role_id`, `permission_id`, `type`)
VALUES ((SELECT id FROM `guild_nakadai`.`admin_roles` WHERE name="員工"),(SELECT id FROM `guild_nakadai`.`admin_permissions` WHERE name="基礎數據匯總"),3
);
他有一個缺點,當我們不小心執行了幾次時,會插入多條相同的垃圾數據
加個前提
要在執行這個 MySQL 語句時添加一個前提條件,即只有表里沒有相同數據才進行添加操作,你可以使用 INSERT IGNORE INTO 的方式來實現。案例:
INSERT IGNORE INTO `guild_nakadai`.`admin_role_permission` (`role_id`, `permission_id`, `type`)
SELECT (SELECT id FROM `guild_nakadai`.`admin_roles` WHERE name="員工"),(SELECT id FROM `guild_nakadai`.`admin_permissions` WHERE name="基礎數據匯總"),3
FROM dual
WHERE NOT EXISTS (SELECT 1 FROM `guild_nakadai`.`admin_role_permission` WHERE role_id = (SELECT id FROM `guild_nakadai`.`admin_roles` WHERE name="員工") AND permission_id = (SELECT id FROM `guild_nakadai`.`admin_permissions` WHERE name="基礎數據匯總") AND type = 3
);
完結
贈人玫瑰,手有余香!如果文章內容對你有所幫助,請不要吝嗇你的點贊評論和關注
,以便我第一時間收到反饋,你的每一次支持
都是我不斷創作的最大動力。當然如果你發現了文章中存在錯誤
或者有更好的解決方法
,也歡迎評論私信告訴我哦!
好了,我是向宇
,https://xiangyu.blog.csdn.net
一位在小公司默默奮斗的開發者,出于興趣愛好,最近開始自學unity,閑暇之余,邊學習邊記錄分享,站在巨人的肩膀上,通過學習前輩們的經驗總是會給我很多幫助和啟發!php是工作,unity是生活!如果你遇到任何問題,也歡迎你評論私信找我, 雖然有些問題我也不一定會,但是我會查閱各方資料,爭取給出最好的建議,希望可以幫助更多想學編程的人,共勉~