Я понятия не имею, в чем проблема. Используя MySQL 5.0, я получаю ошибку компиляции при попытке запустить следующий оператор обновления MYSQL
UPDATE b
SET b.mapx = g.latitude,
b.mapy = g.longitude
FROM business AS b
INNER JOIN business_geocode g ON b.business_id = g.business_id
WHERE (b.mapx = '' or b.mapx = 0) and
g.latitude > 0
все имена полей верны. Есть предположения?
Ответы:
Попробуй это:
Обновить:
Поскольку вы сказали, что запрос привел к синтаксической ошибке, я создал несколько таблиц, с которыми я мог бы проверить его, и подтвердил, что в моем запросе нет синтаксической ошибки:
Видеть? Нет синтаксической ошибки. Я протестировал против MySQL 5.5.8.
источник
show create table business;
иshow create table business_geocode;
я смогу немного лучше проверить свой запрос. Спасибо.AS
Ключевое слово не является обязательным. Но поскольку вы упомянули об этом, я добавил его в ответ для согласованности, поскольку я использовал его для первого псевдонима в том же запросе.Предложение
SET
должно следовать после спецификации таблицы.источник
Для MySql WorkBench, пожалуйста, используйте ниже:
источник