Python 如何在配置单元插入查询中忽略输入时开始
我在制表符中有数据格式 州:加利福尼亚州城市:加利福尼亚州人口:100万 我想创建DB,当我插入时,我应该忽略“state:”、“city:”和“poulation”,我想将state和population一起插入state数据库,将city和population一起插入city表 将有两个表格,一个是州和人口,另一个是城市和人口Python 如何在配置单元插入查询中忽略输入时开始,python,mysql,hadoop,hive,impala,Python,Mysql,Hadoop,Hive,Impala,我在制表符中有数据格式 州:加利福尼亚州城市:加利福尼亚州人口:100万 我想创建DB,当我插入时,我应该忽略“state:”、“city:”和“poulation”,我想将state和population一起插入state数据库,将city和population一起插入city表 将有两个表格,一个是州和人口,另一个是城市和人口 CREATE EXTERNAL TABLE IF NOT EXISTS CSP.original ( st STRING COMMENT 'State',
CREATE EXTERNAL TABLE IF NOT EXISTS CSP.original
(
st STRING COMMENT 'State',
ct STRING COMMENT 'City',
po STRING COMMENT 'Population'
)
COMMENT 'Original Table'
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'
这不管用。它添加了评论,但没有忽略。
我还想为州和市创建两个表。有人能帮我吗?您必须先创建外部表 步骤1:
CREATE EXTERNAL TABLE all_info (state STRING, population INT) PARTITIONED BY (date STRING) ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t;
步骤2:
CREATE TABLE IF NOT EXISTS state (state string, population INT) PARTITIONED BY (date string);
CREATE TABLE IF NOT EXISTS city (city string, population INT) PARTITIONED BY (date string);
步骤3:
INSERT OVERWRITE TABLE state
PARTITION (date = ‘201707076’)
SELECT *
FROM all_info
WHERE date = ‘20170706’ AND
instr(state, ‘state:’) = 1;
INSERT OVERWRITE TABLE city
PARTITION (date = ‘201707076’)
SELECT *
FROM all_info
WHERE date = ‘20170706’ AND
instr(state, ‘city:’) = 1;
你的问题很令人困惑。请让我更清楚