Синтаксис UPDATE с ORDER BY, LIMIT и несколькими таблицами
Изучение SQL, извините, если это элементарно. Пытаясь выяснить работуUPDATE
решение для следующего псевдоиш-кода:
UPDATE tableA
SET tableA.col1 = '$var'
WHERE tableA.user_id = tableB.id
AND tableB.username = '$varName'
ORDER BY tableA.datetime DESC LIMIT 1
Выше больше похожеSELECT
синтаксис, но я в основном пытаюсь обновить значение одного столбца вlatest row таблицы tableA, где имя пользователя, найденное в tableB.username (представленном $ varName), связано с его идентификатором в tableB.id, который существует как идентификатор в tableA.user_id.
Надеюсь, это имеет смысл. Я предполагаю, чтоJOIN
необходимо, но подзапросы кажутся хлопотными дляUPDATE
, я понимаюORDER BY
а такжеLIMIT
закрыты, когда в UPDATE задействованы несколько таблиц ... Но мне нужна функциональность. Это можно обойти?
Немного смущен, заранее спасибо.