我有以下查詢:我如何加入表上的更新
select count(L.ID)
from LA inner join L on (LA.leadid = L.ID)
where L.status = 5
and L.city = "cityname"
and Date(LA.Datetime) < Date_Sub(Now(), INTERVAL 6 MONTH);
它會在一個特定的城市是超過6個月(對於存儲在LA的日期與狀態5條記錄)。這返回約4k結果。我想狀態的值更新爲1對每個這樣的記錄,所以我更新的樣子:
update L, LA
set L.status = 1
where L.status = 5
and L.city = "cityname"
and Date(LA.SomeDatetime) < Date_Sub(Now(), INTERVAL 6 MONTH);
但攤位並鎖定分貝。我懷疑有問題,因爲沒有加入,但我嘗試類似:
update L, LA
from L inner join LA on (L.OID = LA.leadid)
set L.status = 1
where L.status = 5
and L.syscity = "cityname"
and Date(LA.SomeDatetime) < Date_Sub(Now(), INTERVAL 6 MONTH);
,它顯然是行不通的,因爲沒有「從」在更新。
編輯>我使用的是MySQL
DB什麼您使用的是? – geofftnz 2009-03-02 22:44:02