我有一个文件,我正在处理,并试图结合多行与同一个键向下列在一行。
我的意见是
rental_company field_name field_data location_identifier
hertz branchName ANNABA AIRPORT RCCTHERTZAAEREC000002
hertz branchCode AAE RCCTHERTZAAEREC000002
hertz countryCd DZ RCCTHERTZAAEREC000002
hertz isAtAirport true RCCTHERTZAAEREC000002
hertz branchPhone 0555066233 RCCTHERTZAAEREC000002
hertz branchHoursMon 08:00-20:00 RCCTHERTZAAEREC000002
hertz branchHoursTue 08:00-20:00 RCCTHERTZAAEREC000002
hertz branchHoursWed 08:00-20:00 RCCTHERTZAAEREC000002
hertz branchHoursThu 08:00-20:00 RCCTHERTZAAEREC000002
hertz branchHoursFri closed RCCTHERTZAAEREC000002
hertz branchHoursSat closed RCCTHERTZAAEREC000002
hertz branchHoursSun 08:00-20:00 RCCTHERTZAAEREC000002
hertz isParticipating false RCCTHERTZAAEREC000002
hertz airportCode AAE RCCTHERTZAAEREC000002
hertz shuttleServiceInd false RCCTHERTZAAEREC000002
我想输出的是
location_identifier branchName branchCode branchPhone
----------------------------- ------------ ---------- --------------
RCCTENTERPRISEE10101REC000002 LADUE RENTAL E10101 (314) 863 6886
我已经厌倦了使用以下工具:
SELECT
location_identifier,
kv('branchName') as branchName,
kv('branchCode') as branchCode,
kv('branchPhone') as branchPhone
FROM (
SELECT location_identifier, to_map(field_name, field_data) kv
FROM vtable
GROUP BY location_identifier
) t;
最后出现以下错误:表达式不在group by键“field\u data”中,当我添加field\u data时,最后出现无法识别to\u map的错误。我试着用下面的例子:https://docs.treasuredata.com/articles/sql-tips#use-轴心的位置--取消轴心
2条答案
按热度按时间cs7cruho1#
to_map
无法识别是因为,配置单元没有该功能。使用
[]
用于从map函数中提取值。vtable很可能是不正确的表。请用表名替换它。
dvtswwa32#
在解析表以获取分区日期之后,我可以使用以下代码来完成此操作:
从这里开始,我将对另一个表进行连接,并将数据解析为最终表的正确列。