在Hive中操作Tableau等可視化工具時,通常需要將Hive表的數(shù)據(jù)導(dǎo)入到對應(yīng)的MySQL表中。以下是一個簡單的例子,演示如何將Hive表的數(shù)據(jù)導(dǎo)入到MySQL表中。
CREATE TABLE employee (
emp_id INT,
name STRING,
salary FLOAT
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
STORED AS TEXTFILE;
上述代碼創(chuàng)建了一個名叫employee的Hive表,它包含三個列:emp_id、name和salary。數(shù)據(jù)存儲格式為使用','分隔每個字段,使用'\n'作為行分隔符,以文本文件的形式存儲。
INSERT OVERWRITE LOCAL DIRECTORY '/tmp/employee_data'
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
SELECT emp_id, name, salary
FROM employee;
上述代碼將employee表中的數(shù)據(jù)導(dǎo)出到/tmp/employee_data目錄下,以文本文件格式存儲,使用','作為字段分隔符,使用'\n'作為行分隔符。
LOAD DATA LOCAL INFILE '/tmp/employee_data/part-m-00000'
INTO TABLE employee
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n';
上述代碼將/tmp/employee_data目錄下的數(shù)據(jù)加載到employee表中,使用','作為字段分隔符,使用'\n'作為行分隔符。
CREATE TABLE mysql_employee (
emp_id INT,
name VARCHAR(50),
salary DECIMAL(10, 2)
);
上述代碼創(chuàng)建了一個名叫mysql_employee的MySQL表,它包含三個列:emp_id、name和salary。數(shù)據(jù)類型分別為INT、VARCHAR和DECIMAL。
INSERT INTO mysql_employee
SELECT emp_id, name, salary
FROM employee;
上述代碼將employee表中的數(shù)據(jù)插入到mysql_employee表中。