向資料庫中插入一條記錄,有重複值則更新,沒有則插入

2021-09-05 01:12:07 字數 747 閱讀 1392

根據主鍵判斷是否有該條記錄,如果有,則將對應屬性改變,沒有則直接插入;

案例:表 team_info(id,team_name ,project_id,leader);其中id 為key

假設表中已經存在一條記錄(『fd15ee77-dae4-4a64-ad15-9ae540823b8f』,『哈哈』,『1』,『張三』)

(1)主鍵相同,只更新列舉屬性

insert into team_info(

id,team_name ,project_id )

values (『fd15ee77-dae4-4a64-ad15-9ae540823b8f』,『嘿嘿』,『2』)

on duplicate key update

team_name=『嘿嘿』,project_id=『2』

將原有記錄的 team_name 屬性值和 project_id屬性值 改變 ,leader 屬性值不變;

(2)主鍵不同,則作為一條新記錄插入

insert into team_info(

id,team_name ,project_id )

values (『fd15ee77-dae4-4a64-ad15-9ae540888888』,『哈哈』,『1』)

on duplicate key update

team_name='哈哈,project_id=『1』

表中增加一條記錄(『fd15ee77-dae4-4a64-ad15-9ae540888888』,『哈哈』,『1』)

用一條SQL語句實現向資料庫中插入多條記錄的方法

size large b color darkred 用一條sql語句實現向資料庫中插入多條記錄的方法 color b size insert一般是用來給表插入一條指定的列值的,但是,insert還存在另一種形式,可以利用它將一條select語句的結果插入表中。這就是所謂的insert select...

java 向資料庫插入記錄

通過statement author administrator 介面statement 所有已知子介面 callablestatement,preparedstatement 一般使用這個 物件由connection.createstatement 建立 public class insert i...

資料庫中隨機查詢一條記錄的SQL

資料庫的隨機查詢sql 1.oracle,隨機查詢20條 select from select from 表名 order by dbms random.value where rownum 20 2.ms sql server,隨機查詢20條 select top 20 from 表名order ...