MySQL查询到INSERT IF不存在

时间:2013-07-23 06:43:09

标签: mysql insert

我正在处理一个快速脚本需要一些帮助。我有3列{name,page1,page2}。当且仅当那里没有重复的行时,我想插入一个新行。我希望它只检查id和page1的重复项。

例如

第1行,第3行,第5行

第2行:1,2,5

第3行:2,2,5

但不是

第4行:1,3,10

对不起,如果这有点令人困惑。

提前致谢!

编辑:如果已存在相同的ID,我还想将page2更新为+1。 -Thanks

2 个答案:

答案 0 :(得分:2)

试试这段代码。

$id =$_POST['id'];
$page_1 =$_POST['page1'];
$page_2 = $_POST['page2'];

$query = 'mysql_query(select * from table_name where id='.$id.' and page1 = '.$page.'');
$result = mysql_num_rows($query);

if($result == 0){
     // enter your insert query
}
else{
echo 'row is already exit';
}

答案 1 :(得分:0)

INSERT INTO `table_name`(`page1`)
SELECT page1
FROM (SELECT page1 AS page) x
WHERE NOT EXISTS(SELECT page1 FROM `table_name` WHERE `page1` = $value)

试试这个