我有5個表。如何更新一個數據來檢查這些數據是否已經存在於所有5個表中。mysql更新數據檢查多表不存在
我知道類似INSERT ... ON DUPLICATE KEY UPDATE
,但找不到多表的示例。
現在我使用像一些貧困查詢:
mysql_query("UPDATE table1 SET image = '' WHERE image = '".$image."' ");
mysql_query("UPDATE table2 SET image = '' WHERE image = '".$image."' ");
mysql_query("UPDATE table3 SET image = '' WHERE image = '".$image."' ");
mysql_query("UPDATE table4 SET image = '' WHERE image = '".$image."' ");
mysql_query("UPDATE table5 SET image = '' WHERE image = '".$image."' ");
mysql_query("UPDATE table1 SET image = '".$image."' WHERE id = '".$id."'");
首先更新爲空值,其中數據是DUPLICATE
然後插入值的每個表。這將花費更多的MySQL連接,我認爲...那麼如何使用更少的查詢來做這個更新?謝謝。
EDIT1:嘗試了下面的內容,它會更新忽略值以檢查值是否已經在五個表中的一個表中退出。
mysql_query("
UPDATE table1,table2,table3,table4,table5
SET table1.image='".$image."'
WHERE table1.id='".$id."'
AND table1.image!='".$image."'
AND table2.image!='".$image."'
AND table3.image!='".$image."'
AND table4.image!='".$image."'
AND table5.image!='".$image."'
");
你爲什麼有5個相同的表? –
如果圖像不在5中的任何一個,它應該插入哪個表中? –
@ypercube,我正在爲圖像大拇指創建工作。 5表是不同的結構,但我想避免重複的拇指圖像URL插入不同的表。謝謝。 – cj333