Untitled
unknown
sql
2 years ago
3.1 kB
7
Indexable
CREATE TABLE aux(idpedido string, fechapedido string, fechaenvio string, modoenvio string, idcliente string, cliente string, segmento string, ciudad string, pais string, idarticulo string, categoria string, subcategoria string, desc_producto string, ventas string, cantidad string, descuento string, beneficio string, costoenvio string ) ROW FORMAT DELIMITED FIELDS TERMINATED BY ';' ; LOAD DATA INPATH '/user/hadoop/SuperTiendaCSV_kmeza.csv' OVERWRITE INTO TABLE kmeza.aux ; --DROP TABLE supertienda; CREATE TABLE SuperTienda(idpedido string, fechapedido date, fechaenvio date, modoenvio string, idcliente string, cliente string, segmento string, ciudad string, pais string, idarticulo string, categoria string, subcategoria string, desc_producto string, ventas float, cantidad int, descuento float, beneficio float, costoenvio float ) ROW FORMAT SERDE 'org.apache.hadoop.hive.ql.io.orc.OrcSerde' STORED AS INPUTFORMAT 'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat' TBLPROPERTIES ('transactional'='true', 'transactional_properties'='default') ; INSERT INTO supertienda SELECT idpedido, cast(concat_ws('-',split(fechapedido,'-')[2],split(fechapedido,'-')[1],split(fechapedido,'-')[0]) as date) as fechapedido, cast(concat_ws('-',split(fechaenvio,'-')[2],split(fechaenvio,'-')[1],split(fechaenvio,'-')[0]) as date) as fechaenvio, modoenvio, idcliente, cliente, segmento, ciudad, pais, idarticulo, categoria, subcategoria, desc_producto, cast(replace(replace(ventas , ',' , '.') , '$' , '') as float) as ventas, cast(cantidad as int) as cantidad, cast(split(descuento, ',')[0]/100 as float) as descuento, cast(replace(replace(beneficio , ',' , '.') , '$' , '') as float) as beneficio, cast(replace(replace(costoenvio , ',' , '.') , '$' , '') as float) as costoenvio FROM aux where ciudad != 'Ciudad' ; ALTER TABLE supertienda ADD COLUMNS (costototal float, iva float, delta_enviopedido int) ; SELECT ventas-beneficio-costoenvio as CostoTotal, (ventas*0.19)/1.19 as IVA, datediff(fechaenvio, fechapedido) as delta_enviopedido FROM supertienda ; SELECT * FROM supertienda LIMIT 100 ; UPDATE supertienda SET costototal = ventas-beneficio-costoenvio, iva = (ventas*0.19)/1.19, delta_enviopedido = datediff(fechaenvio, fechapedido) ;
Editor is loading...