Reply
Expert Contributor
Posts: 139
Registered: ‎07-21-2014

How to create partitioned view

I got a 'log' table which is currently partitioned by year, month and day. I'm looking to create a partitioned view on top of 'log' table but running into this error:

 
~~~~

hive> CREATE VIEW log_view PARTITIONED ON (pagename,year,month,day) AS SELECT pagename year,month,day,uid,properties FROM log; 

FAILED: SemanticException [Error 10093]: Rightmost columns in view output do not match PARTITIONED ON clause

~~

 

Whats the right way to create a partitioned views? I'm using Hive 0.13 in CDH 5.3.2.

 

Thanks!

Cloudera Employee
Posts: 35
Registered: ‎09-04-2013

Re: How to create partitioned view

It seems you missed a "," between pagename and year after SELECT.

Expert Contributor
Posts: 139
Registered: ‎07-21-2014

Re: How to create partitioned view

Sorry, was a copy/paste error. I did have a comma between pagename and year but got the error I pasted.

 

Thanks!

New Contributor
Posts: 1
Registered: ‎10-08-2018

Re: How to create partitioned view

@buntu

 

Try this:

hive> CREATE VIEW log_view PARTITIONED ON (pagename,year,month,day) AS SELECTuid,properties,pagename year,month,day FROM log; 

 

Reason:

The column names used in the partition must be available at the end of view creation in the same order as mentioned in as partitions.

Announcements