2012-06-20 61 views
0

我在嘗試完成此操作時遇到了一些麻煩。這裏是什麼,我需要做的要點:只有在其他表中的字段符合條件時才更新MySQL

UPDATE links SET 
link = '$link', rid = $rid, order = $order 
WHERE lid = $lid 
IF (SELECT COUNT(*) FROM resources WHERE rid = $rid AND (sid = $sid OR sid IS NULL) AND types IS NULL) == 1; 

所以基本上,我想運行更新當且僅當在資源表中的資源與網站(SID)相關或不相關聯任何特定的網站和類型都是空的。

我想我可以運行一個PHP條件,但如果我可以用一個查詢來做到這一點,那將是更可取的。可能嗎?

Thansk提前這麼多!

回答

5
UPDATE links 
SET link = '$link', rid = $rid, order = $order 
WHERE lid = $lid 
and (SELECT COUNT(*) 
    FROM resources 
    WHERE rid = $rid 
    AND (sid = $sid OR sid IS NULL) 
    AND types IS NULL) = 1; 
+0

非常感謝! –

相關問題