Как массово заменить TV?

Здравствуйте. Подскажите SQL запрос чтобы массово заменить value tv с tmplvarid = 21 у товаров с tv равным ABC?

Например это меняет только у одного товара, а нужно чтоб у всех у кого tv с tmplvarid = 62 равно ABC.

UPDATE `modx_site_tmplvar_contentvalues` SET `value`= 0 WHERE `contentid` = 128020 AND `tmplvarid` = 21

Думаю нужно убрать contentid` = 128020. Т.е. получится так:

UPDATE `modx_site_tmplvar_contentvalues` SET `value`= 0 WHERE `tmplvarid` = 21

Тогда я заменю вообще у всех, а мне нужно только у тех у кого в другом тв стоит определенное значение, в моем случае имя поставщика.

UPDATE `modx_site_tmplvar_contentvalues` SET `value`= 0 WHERE `tmplvarid` = 21 AND `contentid` IN (SELECT `contentid` FROM `modx_site_tmplvar_contentvalues` WHERE `tmplvarid` = 21 AND `value` = 'ABC')

Ошибка. You can't specify target table 'modx_site_tmplvar_contentvalues' for update in FROM clause

Отдельно Селект работает
SELECT contentid FROM modx_site_tmplvar_contentvalues WHERE tmplvarid = 62 AND value = 'ABC'

UPDATE `modx_site_tmplvar_contentvalues` SET `value`= 0 WHERE `tmplvarid` = 21 AND `contentid` IN (SELECT `contentid` FROM (SELECT * FROM `modx_site_tmplvar_contentvalues` WHERE `tmplvarid` = 21 AND `value` = 'ABC') AS tvc);

Работает. Спасибо большое.

Похоже, подключение к Форум | MODX Shopkeeper было разорвано, подождите, пока мы пытаемся восстановить соединение.