У меня есть следующий оператор выбора, который подсчитывает, сколько раз значение появляется в объединенной таблице:обновления MySQL с SELECT COUNT() из внутреннего соединения
SELECT table1.idx, count(table1.idx) FROM
(table2 INNER JOIN table1 ON table1.id=table2.id AND table2.value = 'target')
GROUP BY table1.idx;
Теперь я хочу, чтобы обновить третью таблицу с этими результаты, устанавливающие счетчики, где table3.idx = table1.idx. Я попытался
UPDATE table3 SET count_col=joined_table.c FROM
(SELECT table1.idx, count(table1.idx) FROM
(table2 INNER JOIN table1 ON table1.id=table2.id AND table2.value = 'target')
GROUP BY table1.idx
) joined_table WHERE table3.idx = table1.idx;
, как это рекомендовано в How do I UPDATE from a SELECT in SQL Server?, а также попытался
UPDATE table3 SET count_col=(
SELECT COUNT(table1.idx)
FROM (table1 INNER JOIN table2 ON table1.id=table2.id AND table2.value = 'target')
GROUP BY table1.idx
WHERE table3.idx = table1.idx);
, как рекомендовано в MySQL - UPDATE query based on SELECT Query, но ни один из них работают. Какой правильный синтаксис?
Perfect. *благодаря* – user2667066