На всякий случай sql, который установит всем абонам, у которых несхождение баланса, правильные балансы по сумме платежей:
Естественно, перед выполнением (любых) sql нужно делать бекапы базы
Код:
UPDATE users u JOIN (SELECT u.id, u.balance, SUM(p.cash) AS chk_balance FROM users u LEFT JOIN pays p ON u.id=p.mid GROUP BY u.id HAVING u.balance<>chk_balance) a ON u.id=a.id SET u.balance=a.chk_balance;
Естественно, перед выполнением (любых) sql нужно делать бекапы базы
Чтобы не искали:
Код:
mysql -u root --password='hardpass'
USE nodeny;
UPDATE users u JOIN (SELECT u.id, u.balance, SUM(p.cash) AS chk_balance FROM users u LEFT JOIN pays p ON u.id=p.mid GROUP BY u.id HAVING u.balance<>chk_balance) a ON u.id=a.id SET u.balance=a.chk_balance;
exit
perl /usr/local/nodeny/nokernel.pl -m=system_check -v