Cześć!
Wyrzeźbiłem takie zapytanie (to już prawdziwe nazwy tabel)
UPDATE customers p,
( SELECT customers_id, SUM( points ) AS mysum
FROM customers_points
GROUP BY customers_id ) AS s
SET p.customers_shopping_points = s.mysum + p.customers_shopping_points WHERE p.customers_id = s.customers_id AND s.customers_id =3305
I działa jak trzeba :)
Tylko potrzebuję jeszcze zawrzeć warunek z wartości tabeli customers_points, więc pasuje tutaj jakiś pewnie LEFT JOIN, ale coś mi to nie idzie. Tam jest przechowywana wartość place_id i muszę koniecznie to zawrzeć w WHERE tego update.
Zrobiłem tak, ale kolumna p.customers_id nie jest odnajdywana. Więc coś mi brakuje.
UPDATE customers p,
( SELECT customers_id, SUM( points ) AS mysum
FROM customers_points
GROUP BY customers_id ) AS s
LEFT JOIN customers_points AS cp ON p.customers_id=cp.customers_id
SET p.customers_shopping_points = s.mysum + p.customers_shopping_points WHERE p.customers_id = s.customers_id AND s.customers_id =3305