2013-02-23 119 views
1

我已經經常使用下面的查詢,但是使用這個新的數據庫,它給了我一個不正確的用法錯誤,你們可以看一看,讓我知道我做錯了什麼?更新內部連接 ​​- mysql

UPDATE `master` maa 
INNER JOIN `cdr` ca ON `maa`.numbers=ca.target 
SET `maa`.monthly_mins=ca.secs 
ORDER BY ca.secs; 

在此先感謝您。

+0

'不需要ORDER BY'。 – Kermit 2013-02-23 18:37:48

回答

2

你可以試試這個嗎?儘管這是多表更新的文檔。

對於多表語法,UPDATE更新table_references中命名的每個表中滿足條件的行。在這種情況下,不能使用ORDER BY和LIMIT。

然後你再次只更新一個表。通過刪除順序的子句將有所幫助。

UPDATE `master` maa 
INNER JOIN `cdr` ca 
ON `maa`.numbers=ca.target 
SET `maa`.monthly_mins=ca.secs; 
+0

希望這也有幫助:http://bugs.mysql.com/bug.php?id=68198 – aspiring 2013-02-23 18:46:35

+0

我之所以下單的原因,是因爲我想獲得ca.mins的最高值.... – thevoipman 2013-02-23 21:31:26

+0

爲了能夠使用「ORDER BY」,你可以做一個子查詢,你可以按照你想要的順序選擇所有的數據 – Sirmyself 2017-05-09 13:34:24

0

試試這個

UPDATE `master` maa 
    INNER JOIN `cdr` ca 
    ON `maa`.numbers=ca.target 
    SET `maa`.monthly_mins=ca.secs