14 lines
671 B
SQL
14 lines
671 B
SQL
-- 新增 users.vip_activated_at:成为 VIP 时间,用于排序(后付款/后设置在前)
|
||
-- 执行:mysql -u user -p database < add-vip-activated-at.sql
|
||
-- 若列已存在会报错,可忽略
|
||
|
||
ALTER TABLE users ADD COLUMN vip_activated_at DATETIME NULL COMMENT '成为VIP时间,付款=pay_time,手动=now,排序用';
|
||
|
||
-- 可选:为已有 VIP 用户回填 vip_activated_at(取该用户最近一次 vip 订单的 pay_time)
|
||
-- UPDATE users u
|
||
-- SET u.vip_activated_at = (
|
||
-- SELECT MAX(o.pay_time) FROM orders o
|
||
-- WHERE o.user_id = u.id AND o.product_type = 'vip' AND o.status = 'paid'
|
||
-- )
|
||
-- WHERE u.is_vip = 1 AND u.vip_activated_at IS NULL;
|