【详述】
hive建表语句:
CREATE TABLE temp_db.test_detail(
testv_no int,
testv_name string,
testr_no int,
testr_name string,
testu_no int,
testu_name string,
testt_no int,
testt_line_no string,
teste_no int,
teste_name string,
testsk_no int)
PARTITIONED BY (
date_flag date)
ROW FORMAT SERDE
‘org.apache.hadoop.hive.ql.io.orc.OrcSerde’
STORED AS INPUTFORMAT
‘org.apache.hadoop.hive.ql.io.orc.OrcInputFormat’
OUTPUTFORMAT
‘org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat’
LOCATION
‘hdfs://hdfs/xxxx’
TBLPROPERTIES (
‘bucketing_version’=‘2’,
‘orc.compress’=‘SNAPPY’,
‘spark.sql.create.version’=‘2.2 or prior’,
‘spark.sql.sources.schema.numPartCols’=‘1’,
‘spark.sql.sources.schema.numParts’=‘1’,
‘spark.sql.sources.schema.part.0’=’{“type”:“struct”,“fields”:[{“name”:“testv_no”,“type”:“integer”,“nullable”:true,“metadata”:{}},{“name”:“testv_name”,“type”:“string”,“nullable”:true,“metadata”:{}},{“name”:“testr_no”,“type”:“integer”,“nullable”:true,“metadata”:{}},{“name”:“testr_name”,“type”:“string”,“nullable”:true,“metadata”:{}},{“name”:“testu_no”,“type”:“integer”,“nullable”:true,“metadata”:{}},{“name”:“testu_name”,“type”:“string”,“nullable”:true,“metadata”:{}},{“name”:“testt_no”,“type”:“integer”,“nullable”:true,“metadata”:{}},{“name”:“testt_line_no”,“type”:“string”,“nullable”:true,“metadata”:{}},{“name”:“teste_no”,“type”:“integer”,“nullable”:true,“metadata”:{}},{“name”:“teste_name”,“type”:“string”,“nullable”:true,“metadata”:{}},{“name”:“testsk_no”,“type”:“integer”,“nullable”:true,“metadata”:{}},{“name”:“date_flag”,“type”:“date”,“nullable”:true,“metadata”:{}}]}’,
‘spark.sql.sources.schema.partCol.0’=‘date_flag’,
‘transient_lastDdlTime’=‘xxx’)
sr建表语句:
CREATE EXTERNAL TABLE test_detail (
testv_no int,
testv_name string,
testr_no int,
testr_name string,
testu_no int,
testu_name string,
testt_no int ,
testt_line_no string ,
teste_no int ,
teste_name string ,
testsk_no int,
date_flag date
)ENGINE=HIVE
PROPERTIES (
“database” = “temp_db”,
“table” = “test_detail”,
“resource” = “hive_dev”,
“hive.metastore.uris” = “xxx:port”
);
be报错:
定位到testsk_no这个字段报错,其他字段不报错,其他表也会存在类似情况,有的表正常,有的表不正常,如果重新create table 字段一致的表,然后inser into,便可以正常查询,这种情况该怎么定位解决呢?
