Update данные таблицы если есть нужный документ с нужным значением
Работаю с БД MySql, у меня есть таблица "registry" там есть данные например документа '78946123852' с транзакцией продано "TransactionID"=1 хачу сделать update строки "PercentSub" и "PercentAge" если добавит этот же номер документ но с транзакцией возврат "TransactionID"=2. Сделал запрос но он не работает помогите пожалуйста
UPDATE registry SET
registry.PercentAge=t2.PercentAge,
registry.PercentSub=t2.PercentSub
FROM registry AS t2
LEFT JOIN registry ON t2.NumberDocument=registry.NumberDocument AND t2.TransactionID='1' AND registry.TransactionID='2'
WHERE registry.NumberDocument='78946123852'
Я пробовал, этот Update в SQL Server 2008 все работать, но в MySQL оно не работает
Ответы (1 шт):
Автор решения: ariana
→ Ссылка
Сергей Мишин, я знаю что это разные языки и синтаксиса, но ты не помог мне своим комментарием про "автобус и самолёт" и на stackoverflow (англ.версии) помогли мне за 2 минуты
вот правильный ответ
UPDATE registry AS r1
LEFT JOIN ( SELECT * FROM registry WHERE TransactionID = '1' ) AS r2
ON r2.NumberDocument = r1.NumberDocument
SET r1.PercentAge = r2.PercentAge, r1.PercentSub = r2.PercentSub
WHERE r1.NumberDocument = '78946123852'
AND r1.TransactionID = '2'
