一般正常的情况下都会遇到这种需求
有一些数据信息,我们每次发生请求的时候,要判断此条数据是否存在,如果存在则进行修改操作,反则进行插入操作,一般人都会这样写
if($name1==$name2){
$sql="update table set a1='a1'";
}else{
$sql="insert into table(a1) values('a1')";
}
现在刚发现mysql有个自带的函数,可以一句sql就代替上面的代码 ,php判断都不用写了,这个方法就是
ON DUPLICATE KEY UPDATE
用法如下
$sql="insert into cinema(movieName,releaseInfo,sumBoxInfo,boxInfo,boxRate,showInfo,showRate,avgShowView,avgSeatView) values('$movieName','$releaseInfo','$sumBoxInfo','$boxInfo','$boxRate','$showInfo','$showRate','$avgShowView','$avgSeatView') ON DUPLICATE KEY UPDATEmovieName='$movieName',releaseInfo='$releaseInfo',sumBoxInfo='$sumBoxInfo',boxInfo='$boxInfo