Data exchange with INSERT
To extract data from tables/partitions, we can use the INSERT
keyword. Like other relational databases, Hive supports inserting data into a table by selecting data from another table. This is a very common ETL (a term in data warehousing for Extract, Transform, and Load) pattern used to populate an existing or new table from another table or dataset. The HQL INSERT
statement has the same syntax as a relational database's INSERT
. However, HQL has improved its INSERT
statement by supporting data overwrittening, multi-insert, dynamic partition insert, as well as inserting data into files. The following are a few examples of INSERT
statements in HQL:
- The following is a regular
INSERT
from theSELECT
statement:
-- Check the target table, which is empty. > SELECT name, work_place FROM employee; +-------------+-------------------+ |employee.name|employee.work_place| +-------------+-------------------+ +-------------+-------------------+ ...