mysql:REPLACE & REPLACE INTO函数实践

一、replace函数

语法:replace(object,search,replace) 

语义:把object对象中出现的的search全部替换成replace。

$attend_table = 'si_activity_attend_log_' . $mid;
$mer_table    = 'si_merchant_user_' . $mid;

UPDATE $attend_table act, $mer_table mer
            SET act.uid = mer.id, act.prize = REPLACE(act.prize, '
', '+'), act.prize_type = REPLACE(act.prize_type, 3, '1,2')
WHERE act.openid = mer.openid

二、replace into函数

为什么会接触到replace into函数,是因为业务需要向数据库中插入数据,前提是重复的不能再次插入。以前用where解决的,今天才知道还有一个更简洁的方法replace。 
replace 具备替换拥有 唯一索引或者主键索引 重复数据的能力,也就是如果使用replace into插入的数据的唯一索引或者主键索引与之前的数据有重复的情况,将会删除原先的数据,然后再进行添加。 
语法:replace into table( col1, col2, col3 ) values ( val1, val2, val3 ) 

语义:向table表中col1, col2, col3列replace数据val1,val2,val3。

REPLACE INTO users (id,name,age) VALUES(123, ‘chao’, 50);



你可能感兴趣的:(MySQL)