我需要一點幫助,我正在處理一個快速腳本。我有3列{name,page1,page2}。當且僅當沒有重複行時,我想插入一個新行。我希望它僅檢查id和page1是否有重複項。MySQL查詢到INSERT IF不存在
對於實施例
行1:1,3,5
行2:1,2,5
行3:2,2,5
BUT NOT
排4:1,3,10
對不起如果這有點令人困惑。
在此先感謝!
編輯:我也想更新page2到+1如果相同的ID已經存在。 -Thanks
我需要一點幫助,我正在處理一個快速腳本。我有3列{name,page1,page2}。當且僅當沒有重複行時,我想插入一個新行。我希望它僅檢查id和page1是否有重複項。MySQL查詢到INSERT IF不存在
對於實施例
行1:1,3,5
行2:1,2,5
行3:2,2,5
BUT NOT
排4:1,3,10
對不起如果這有點令人困惑。
在此先感謝!
編輯:我也想更新page2到+1如果相同的ID已經存在。 -Thanks
試試這個代碼。
$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';
}
完美的作品。不知道爲什麼我沒有想到它。 – user1834218
INSERT INTO `table_name`(`page1`)
SELECT page1
FROM (SELECT page1 AS page) x
WHERE NOT EXISTS(SELECT page1 FROM `table_name` WHERE `page1` = $value)
試試這個
對不起,不澄清。如果ID已經存在,我想做'page2 = page2 + 1' – user1834218
@ user1834218,你真的試圖解決它嗎?您的評論對我來說就像您認爲是免費的解決方案服務一樣。 – Devolus
然後將id字段設置爲自動增量,以避免重複的ID字段 –
'id'是主鍵嗎?如果是這樣,則不能插入重複的「id」。如果您需要在* uniqueness *中包含更多列,請使用唯一約束 – Phil
id不是主鍵。說實話,我應該把它重命名爲'name'之類的東西。但是,不,可以有多行具有相同的'name' /'id' – user1834218