Sei sulla pagina 1di 3

// HIVE COMMANDS

// Create the table


create table nsedata(symbol STRING, series STRING, open float, high float, low
float, close float, last float, prevclose float, tottrdqty INT, tottrdval float,
mydate STRING, isin STRING, colm STRING) row format delimited fields terminated by
',' stored as TEXTFILE;

// Load data into the table


load data local inpath 'all.csv' overwrite into table nsedata;

// Run commands on the table


select count(*) from nsedata where mydate like "%OCT-2012";
select * from nsedata where mydate like "%OCT-2012" limit 10;
select * from nsedata where (mydate like "%NOV-2012" and symbol like "GEOMETRIC")
limit 10;
select count(*) from nsedata where (symbol = "GEOMETRIC");

select from nsedata symbol, open, close, (open+close)/2 where (symbol = "GEOMETRIC"
and mydate = "01-OCT-2012");

create table tcount(mysymbol STRING, myavg DOUBLE);


insert overwrite table tcount select symbol, (open+close)/2 from nsedata where
mydate like "%OCT-2012";
select * from tcount limit 15;
select count(*) from tcount;

select * from tcount where myavg < 10 limit 25;


select mysymbol, myavg from tcount limit 10;

select mysymbol, count(myavg<10) from tcount group by mysymbol limit 10;


select symbol, count((open+close)/2<10) from nsedata group by symbol limit 20;

select concat(symbol) from nsedata limit 10;


select concat(symbol,"-",open,"-",high) from nsedata limit 10;

drop table tcount;


show tables;
describe table nsedata;
describe nsedata;

select nsedata.symbol, isin from nsedata limit 10;


select nsedata.symbol, nsedata.isin limit 10;
select nsedata.symbol, nsedata.isin from nsedata limit 10;
select nsedata.symbol, nsedata.isin from nsedata where nsedata.isin != "" and
mydate like "%2011" limit 100;

select symbol, count(symbol) from nsedata group by symbol limit 10;


select symbol, count(*) from nsedata group by symbol limit 10;

show functions;

describe function count;


describe function sorted;

select symbol, count(symbol), stddev(close) from nsedata group by symbol limit 25;
select symbol, count(symbol), avg(close), stddev(close) from nsedata where symbol =
"GEOMETRIC" and mydate like "%2011" group by symbol limit 25;
show database;
describe database;
show database default;
use default;
show tables;

select count(*) from nsedata group by symbol limit 10;

select symbol, count(*) from nsedata group by symbol sort by symbol limit 10;
select symbol,open, count(*) from nsedata group by symbol,open sort by open limit
10;

create temporary table tdata(symbol STRING, open DOUBLE, close DOUBLE, mydate
STRING);
show tables;

insert overwrite table tdata select symbol, open, close, mydate from nsedata where
symbol != "SYMBOL";
select count(*) from tdata;

from tdata t1 join tdata t2 on (t1.mydate = t2.mydate) select t1.symbol, t1.open,


t1.close, t1.mydate where (t1.close - t2.close < 10) limit 25;

from tdata t1 join tdata t2 on (t1.mydate = t2.mydate and t1.symbol != t2.symbol)


select t1.symbol, t1.open, t1.close, t2.symbol, t2.open, t2.close, t1.mydate where
(t1.close - t2.close < 10) limit 25;

from tdata t1 join tdata t2 on (t1.mydate = t2.mydate and t1.symbol = "GEOMETRIC")


select t1.symbol, t1.open, t1.close, t2.symbol, t2.open, t2.close, t1.mydate where
(t1.close - t2.close < 10) limit 25;

from tdata t1 join tdata t2 on (t1.mydate = t2.mydate and t1.mydate like "%2012"
and t1.symbol = "GEOMETRIC") select t1.symbol, t1.close, t2.symbol, t2.close,
t1.mydate where (abs(t1.close - t2.close) < 5) limit 25;

from tdata t1 join tdata t2 on (t1.mydate = t2.mydate and t1.mydate like "%2013"
and t1.symbol = "GEOMETRIC") select t1.symbol, t1.close, t2.symbol, t2.close,
t1.mydate where (abs(t1.close - t2.close) < 5) limit 25;

from tdata t1 join tdata t2 on (t1.mydate = t2.mydate and t1.mydate like "%2013"
and t1.symbol = "GEOMETRIC") select t1.symbol, t1.close, t2.symbol, t2.close,
t1.mydate where (abs(t1.close - t2.close) < 3) limit 25;

describe extended nsedata;

analyze table nsedata compute statistics for columns;

show tables;

describe function avg;


select symbol, avg(open) from nsedata where symbol = "GEOMETRIC" group by symbol;
select symbol, avg(open) from nsedata where symbol = "GEOMETRIC" and mydate like
"%2012" group by symbol;
select symbol, avg(open) from nsedata where mydate like "%2012" group by symbol
sort by avg(open);
select symbol, avg(open) from nsedata where mydate like "%2012" group by symbol
sort by avg(nsedata.open);
select symbol, avg(open) from nsedata where mydate like "%2012" group by symbol
sort by symbol limit 25;
select symbol, avg(open), "2012", from nsedata where mydate like "%2012" group by
symbol sort by symbol limit 25;
select symbol, avg(open), "2012" from nsedata where mydate like "%2012" group by
symbol sort by symbol limit 25;

Potrebbero piacerti anche