--创建表:
CREATE TABLE test.test03
(
id int,
name varchar(20),
age int
);
--插入数据
INSERT INTO test.test03 values(1001,'sz',30),(1002,'gz',40);
--正确查询
SELECT a.id
,k
,v
FROM test.test03 a
LATERAL VIEW explode_map(map('address',a.name,'age',a.age)) tmp as k,v;
--错误查询(字段 id2不存在表中)
SELECT a.id
,a.id2
,k
,v
FROM test.test03 a
LATERAL VIEW explode_map(map('address',a.name,'age',a.age)) tmp as k,v;
客户端会提示:
ERROR 1051 (42S02): errCode = 2, detailMessage = Unknown table 'v'
这提示很不准确,应该提示字段id2不存在。