我有2個mysql表在數據庫中通過descriptionId字段連接起來。如何在UPDATE語句中使用INNER JOIN?
dataTable.dataId
dataTable.descriptionId
dataTable.userId
dataTable.value
descriptionLookupTable.descriptionId
descriptionLookupTable.descriptionName
在PHP中,我試圖更新字段:dataTable.value,當dataTable.descriptionID = Gender
和dataTable.userId = $_SESSION['userId']
。
例如在descriptionLookupTable中:descriptionLookupTable.descriptionId = 1
和descriptionLookupTable.descriptionName = Gender
。並在dataTable:dataTable.descriptionID = 1
。
據我所知,通過與用戶ID交易的一部分:
"WHERE dataTable.userId = '" . $_SESSION['userId'] . "'";
但我無法弄清楚如何使用INNER JOIN。
下面的查詢不起作用。
$query = "UPDATE dataTable
INNER JOIN descriptionLookupTable
ON dataTable.descriptionId = descriptionLookupTable.descriptionId
AND descriptionLookupTable.descriptionName = Gender
SET Gender = '$gender' WHERE dataTable.user_id = '" . $_SESSION['user_id'] . "'";
錯誤消息是:Unknown column 'Gender' in 'field list'
。
http://stackoverflow.com/問題/ 8057565/mysql-update-statement-inner-join-tables –
嘗試這個'SET dataTable.Gender ='...'' –
謝謝但是當我嘗試它時,我得到錯誤信息:未知列'dataTable.Gender'in '字段列表 – user2646006