MySQL insert技巧

示例表:

CREATE TABLE `user` (
        `user_id` int(11) AUTO_INCREMENT ,
        `user_name` varchar(50) NOT NULL DEFAULT '',
        PRIMARY KEY `key_1` (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

有責插入無則更新

insert into user (user_id, user_name) values (‘100’, ‘name100’) on duplicate key update user_name = values(user_name) ;

在UPDATE子句中使用VALUES(col_name)函數從INSERT…UPDATE語句的INSERT部分引用列值。換句話說,如果發生重複關鍵字衝突,則UPDATE子句中的VALUES(col_name)可以引用被插入的col_name的值。本函數特別適用於多行插入。VALUES()函數只在INSERT…UPDATE語句中有意義,其它時候會返回NULL。


發佈了40 篇原創文章 · 獲贊 6 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章