mirror of https://github.com/sipwise/db-schema.git
32 lines
928 B
32 lines
928 B
use billing;
|
|
|
|
alter table contracts add column product_id int(11) unsigned default null;
|
|
|
|
update
|
|
contracts c
|
|
join (
|
|
select
|
|
bm1.contract_id,
|
|
max(bm1.id) as id
|
|
from
|
|
billing.billing_mappings bm1
|
|
join (
|
|
select
|
|
bm2.contract_id,
|
|
max(bm2.start_date) as start_date
|
|
from
|
|
billing.billing_mappings bm2
|
|
where (
|
|
bm2.end_date >= now() or bm2.end_date is null)
|
|
and (bm2.start_date <= now() or bm2.start_date is null
|
|
) group by bm2.contract_id
|
|
) as mx on bm1.contract_id = mx.contract_id and bm1.start_date <=> mx.start_date
|
|
group by bm1.contract_id
|
|
) as bm_actual on bm_actual.contract_id = c.id
|
|
join
|
|
billing.billing_mappings bm on bm.id = bm_actual.id
|
|
set c.product_id = bm.product_id;
|
|
|
|
alter table contracts modify column product_id int(11) unsigned not null, add constraint c_productid_ref foreign key (product_id) references products (id) on update cascade;
|
|
|