Files
boursecu_server/database/sql/add_total_referrals_column.sql
T
2026-06-06 17:05:39 +03:30

24 lines
704 B
SQL

-- تعداد دعوت‌های هر معرف — AuthController::register → increment('total_referrals')
-- یک بار روی سرور: USE دیتابیس + بکاپ
START TRANSACTION;
ALTER TABLE `customers`
ADD COLUMN `total_referrals` INT UNSIGNED NOT NULL DEFAULT 0 AFTER `referral_to_id`;
-- هم‌تراز با تعداد ثبت‌نام‌های واقعی (اختیاری ولی توصیه می‌شود)
UPDATE `customers` AS c
SET c.`total_referrals` = (
SELECT COUNT(*)
FROM (
SELECT `id`
FROM `customers`
WHERE `referral_to_id` = c.`referral_id`
AND `deleted_at` IS NULL
) AS r
)
WHERE c.`referral_id` IS NOT NULL
AND TRIM(c.`referral_id`) <> '';
COMMIT;