2014-09-28 57 views
0

我嘗試使用以下錯誤1093:查詢的地方在UPDATE和SET

UPDATE timeline SET c_flag=(HOUR(TIMEDIFF('2014-09-29 7:00:00',(SELECT reference_log FROM timeline WHERE venture_id=33))) >= 48) WHERE venture_id=33; 

更新我的表,但我因此得到

ERROR 1093 : You can't specify target table 'timeline' for update in FROM clause 

什麼是適當的查詢相同的值爲了這?這裏不需要

+1

你真的需要一個子查詢? – 2014-09-28 07:28:36

+0

是的,我認爲是這樣,因爲我正在處理同一行和同一個表上的值。 – 2014-09-28 08:30:14

回答

1

子查詢,只是試試這個:

UPDATE timeline 
SET c_flag = (HOUR(TIMEDIFF('2014-09-29 7:00:00', reference_log)) >= 48) 
WHERE venture_id=33;