Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Hive >> mail # user >> Inserting data into Hive Tables from queries


Copy link to this message
-
RE: Inserting data into Hive Tables from queries
yes this is restrictive. There is a JIRA open for this but we have not fixed this yet... The only possible work around for this particular case is to use the multi group by format and list out all the 12 partitions in your case...

FROM tab1
INSERT OVERWRITE TABLE tab2 PARTITION(month=1) SELECT  day, count(1) WHERE month=1 GROUP BY day
INSERT OVERWRITE TABLE tab2 PARTITION(month=2) SELECT day, count(1) WHERE month=2 GROUP BY day
....
INSERT OVERWRITE TABLE tab2 PARTITION(month=12) SELECT day, count(1) WHERE month=12 GROUP BY day;

Ashish
________________________________________
From: Vijay [[EMAIL PROTECTED]]
Sent: Friday, September 04, 2009 9:09 PM
To: [EMAIL PROTECTED]
Subject: Inserting data into Hive Tables from queries

Hi,

When using the INSERT OVERWRITE TABLE ... FROM SELECT syntax, you can specify partition information for the inserts. However, these partition values can only be literals. This seems too restrictive. For example, I have a query like this:
SELECT month, day, count(1) FROM tab1 GROUP BY month, day;

When I insert into tab2 from the above select statement, I'd like the month and day values to be used as partitions for the insert. Is there any way of doing this? May be I'm trying to do this the wrong way?

Thanks,
Vijay