如何使用Hive的Create表作为选择(CTA)
时间:2020-02-23 14:33:32 来源:igfitidea点击:
在此处显示的Hive DML示例中,示出了称为Create表的强大技术,如选择,或者CTAS。
它的构造允许我们在构建大数据分析的强大模式时从其他表中快速从其他表中派生蜂巢表。
(A) hive> CREATE TABLE myflightinfo2007 AS > SELECT Year, Month, DepTime, ArrTime, FlightNum, Origin, Dest FROM FlightInfo2007 > WHERE (Month = 7 AND DayofMonth = 3) AND (Origin='JFK' AND Dest='ORD'); (B) hive> SELECT * FROM myFlightInfo2007; OK 2007 7 700 834 5447 JFK ORD 2007 7 1633 1812 5469 JFK ORD 2007 7 1905 2100 5492 JFK ORD 2007 7 1453 1624 4133 JFK ORD 2007 7 1810 1956 4392 JFK ORD 2007 7 643 759 903 JFK ORD 2007 7 939 1108 907 JFK ORD 2007 7 1313 1436 915 JFK ORD 2007 7 1617 1755 917 JFK ORD 2007 7 2002 2139 919 JFK ORD Time taken: 0.089 seconds, Fetched: 10 row(s) hive> CREATE TABLE myFlightInfo2008 AS > SELECT Year, Month, DepTime, ArrTime, FlightNum, Origin, Dest FROM FlightInfo2008 > WHERE (Month = 7 AND DayofMonth = 3) AND (Origin='JFK' AND Dest='ORD'); hive> SELECT * FROM myFlightInfo2008; OK 2008 7 930 1103 5199 JFK ORD 2008 7 705 849 5687 JFK ORD 2008 7 1645 1914 5469 JFK ORD 2008 7 1345 1514 4392 JFK ORD 2008 7 1718 1907 1217 JFK ORD 2008 7 757 929 1323 JFK ORD 2008 7 928 1057 907 JFK ORD 2008 7 1358 1532 915 JFK ORD 2008 7 1646 1846 917 JFK ORD 2008 7 2129 2341 919 JFK ORD Time taken: 0.186 seconds, Fetched: 10 row(s)
在步骤a中,通过选择特定日的较大表的较大表的子集(在本例中,7月3日),构建来自FlightInfo2007和FlightInfo2008的两个较小的表格,其中,飞行的起源是纽约的JFK机场( JFK)和目的地是芝加哥的O'Hare机场(ORD)。
然后在步骤b中,我们只需转储这些小型表的内容,以便我们可以查看数据。