Sei sulla pagina 1di 3

select * from mis_vida.

de_marketshare

--separar las columnas del periodo para obtener las fechas


alter table mis_vida.de_marketshare ADD column anio varchar(4)
update mis_vida.de_marketshare set anio= cast(left(periodo,4)as varchar(4))
alter table mis_vida.de_marketshare add column mes varchar(2)
update mis_vida.de_marketshare set mes= cast(right(periodo,2)as varchar(2))
alter table mis_vida.de_marketshare ADD column dia varchar(2)
update mis_vida.de_marketshare set dia= '01'

--convertir las columnas en fecha


alter table mis_vida.de_marketshare ADD column fecha date
update mis_vida.de_marketshare set fecha = cast(anio+mes+dia as datetime)

ALTER TABLE mis_vida.de_marketshare add COLUMN mktshare_12LTM decimal(20,2)


ALTER TABLE mis_vida.de_marketshare drop COLUMN mktshare_12LTM
ALTER TABLE mis_vida.de_marketshare drop COLUMN anio
ALTER TABLE mis_vida.de_marketshare drop COLUMN mes
ALTER TABLE mis_vida.de_marketshare drop COLUMN dia

-----------------------------------------------------------------------------------
--
--previamente se creo una tabla para concatenar las fechas en un codigo unico
----
select * from mis_vida.de_marketshare_primas

--verificar que se tengan todas las columnas


select count(periodo) from mis_vida.de_marketshare_primas
--creacion de la nueva columna
alter table mis_vida.de_marketshare_primas add column codigo_ltm bigint
alter table mis_vida.de_marketshare_primas drop column codigo_ltm
--llenado de la columna con los valores de la tabla 2
update mis_vida.de_marketshare_primas
set codigo_ltm =codigo
from mis_vida.de_marketshare_primas t1
inner join mis_vida.de_marketshare_meses t2 on t1.periodo=t2.periodo

alter table mis_vida.de_marketshare_primas add column mktshare_1 decimal(20,2)


update mis_vida.de_marketshare_primas
set mktshare_1 = isnull(t2.mktshare_mes_dolares,0)
from mis_vida.de_marketshare_primas t1, mis_vida.de_marketshare_primas t2
where t1.empresa=t2.empresa and t1.ramo=t2.ramo and (t1.codigo_ltm)-1 =
t2.codigo_ltm

alter table mis_vida.de_marketshare_primas add column mktshare_2 decimal(20,2)


update mis_vida.de_marketshare_primas
set mktshare_2 = isnull(t2.mktshare_mes_dolares,0)
from mis_vida.de_marketshare_primas t1, mis_vida.de_marketshare_primas t2
where t1.empresa=t2.empresa and t1.ramo=t2.ramo and (t1.codigo_ltm)-2 =
t2.codigo_ltm

alter table mis_vida.de_marketshare_primas add column mktshare_3 decimal(20,2)


update mis_vida.de_marketshare_primas
set mktshare_3 = isnull(t2.mktshare_mes_dolares,0)
from mis_vida.de_marketshare_primas t1, mis_vida.de_marketshare_primas t2
where t1.empresa=t2.empresa and t1.ramo=t2.ramo and (t1.codigo_ltm)-3 =
t2.codigo_ltm

alter table mis_vida.de_marketshare_primas add column mktshare_4 decimal(20,2)


update mis_vida.de_marketshare_primas
set mktshare_4 = isnull(t2.mktshare_mes_dolares,0)
from mis_vida.de_marketshare_primas t1, mis_vida.de_marketshare_primas t2
where t1.empresa=t2.empresa and t1.ramo=t2.ramo and (t1.codigo_ltm)-4 =
t2.codigo_ltm

alter table mis_vida.de_marketshare_primas add column mktshare_5 decimal(20,2)


update mis_vida.de_marketshare_primas
set mktshare_5 = isnull(t2.mktshare_mes_dolares,0)
from mis_vida.de_marketshare_primas t1, mis_vida.de_marketshare_primas t2
where t1.empresa=t2.empresa and t1.ramo=t2.ramo and (t1.codigo_ltm)-5 =
t2.codigo_ltm

alter table mis_vida.de_marketshare_primas add column mktshare_6 decimal(20,2)


update mis_vida.de_marketshare_primas
set mktshare_6 = isnull(t2.mktshare_mes_dolares,0)
from mis_vida.de_marketshare_primas t1, mis_vida.de_marketshare_primas t2
where t1.empresa=t2.empresa and t1.ramo=t2.ramo and (t1.codigo_ltm)-6 =
t2.codigo_ltm

alter table mis_vida.de_marketshare_primas add column mktshare_7 decimal(20,2)


update mis_vida.de_marketshare_primas
set mktshare_7 = isnull(t2.mktshare_mes_dolares,0)
from mis_vida.de_marketshare_primas t1, mis_vida.de_marketshare_primas t2
where t1.empresa=t2.empresa and t1.ramo=t2.ramo and (t1.codigo_ltm)-7 =
t2.codigo_ltm

alter table mis_vida.de_marketshare_primas add column mktshare_8 decimal(20,2)


update mis_vida.de_marketshare_primas
set mktshare_8 = isnull(t2.mktshare_mes_dolares,0)
from mis_vida.de_marketshare_primas t1, mis_vida.de_marketshare_primas t2
where t1.empresa=t2.empresa and t1.ramo=t2.ramo and (t1.codigo_ltm)-8 =
t2.codigo_ltm

alter table mis_vida.de_marketshare_primas add column mktshare_9 decimal(20,2)


update mis_vida.de_marketshare_primas
set mktshare_9 = isnull(t2.mktshare_mes_dolares,0)
from mis_vida.de_marketshare_primas t1, mis_vida.de_marketshare_primas t2
where t1.empresa=t2.empresa and t1.ramo=t2.ramo and (t1.codigo_ltm)-9 =
t2.codigo_ltm

alter table mis_vida.de_marketshare_primas add column mktshare_10 decimal(20,2)


update mis_vida.de_marketshare_primas
set mktshare_10 = isnull(t2.mktshare_mes_dolares,0)
from mis_vida.de_marketshare_primas t1, mis_vida.de_marketshare_primas t2
where t1.empresa=t2.empresa and t1.ramo=t2.ramo and (t1.codigo_ltm)-10 =
t2.codigo_ltm

alter table mis_vida.de_marketshare_primas add column mktshare_11 decimal(20,2)


update mis_vida.de_marketshare_primas
set mktshare_11 = isnull(t2.mktshare_mes_dolares,0)
from mis_vida.de_marketshare_primas t1, mis_vida.de_marketshare_primas t2
where t1.empresa=t2.empresa and t1.ramo=t2.ramo and (t1.codigo_ltm)-11 =
t2.codigo_ltm

alter table mis_vida.de_marketshare_primas add column mktshare_12ltm decimal(20,2)


update mis_vida.de_marketshare_primas
set mktshare_12ltm =
mktshare_mes_dolares+mktshare_1+mktshare_2+mktshare_3+mktshare_4+mktshare_5+mktshar
e_6+mktshare_7+mktshare_8+mktshare_9+mktshare_10+mktshare_11
where mktshare_11 >=0 or mktshare_11 <0

alter table mis_vida.de_marketshare_primas drop column codigo_ltm


alter table mis_vida.de_marketshare_primas drop column mktshare_1
alter table mis_vida.de_marketshare_primas drop column mktshare_2
alter table mis_vida.de_marketshare_primas drop column mktshare_3
alter table mis_vida.de_marketshare_primas drop column mktshare_4
alter table mis_vida.de_marketshare_primas drop column mktshare_5
alter table mis_vida.de_marketshare_primas drop column mktshare_6
alter table mis_vida.de_marketshare_primas drop column mktshare_7
alter table mis_vida.de_marketshare_primas drop column mktshare_8
alter table mis_vida.de_marketshare_primas drop column mktshare_9
alter table mis_vida.de_marketshare_primas drop column mktshare_10
alter table mis_vida.de_marketshare_primas drop column mktshare_11

Potrebbero piacerti anche