从另一个表查找对应的数据
例题描述和简单分析
有csv文件csv1.csv,数据如下所示:
id,score
1,16
3,12
5,13
11,8
13,32
17,37
23,74
29,7
31,70
41,83
有csv文件csv2.csv,数据如下所示:
id
1
3
5
7
11
13
17
19
23
29
31
37
41
在命令行中,需要根据id,用csv2.csv,从csv1.csv中查找对应的数据,找不到的score值用NAN表示,结果如下:
1 16
3 12
5 13
7 NAN
11 8
13 32
17 37
19 NAN
23 74
29 7
31 70
37 NAN
41 83
解法及简要说明
命令行中执行esprocx -r $select a.id as id, nvl(b.score, 'NAN') as score from csv2.csv a left join csv1.csv b on a.id = b.id,即可实现需求。
https://stackoverflow.com/questions/63588601/implementing-excel-vlookup-like-function-with-awk
英文版