8.11 数据分栏
数据分栏,是将多行数据从纵向排列划分为 2 栏或多栏并排。
世界城市人口总表如下:
Continent | Country | City | Population |
---|---|---|---|
Africa | Egypt | Cairo | 6789479 |
Asia | China | Shanghai | 24240000 |
Europe | Britain | London | 7285000 |
… | … | … | … |
分栏列出欧洲和非洲人口超 200 万的城市名称及人口(每栏按从多到少排序),期望结果如下图:
Europe City | Population | Africa City | Population |
---|---|---|---|
Moscow | 8389200 | Cairo | 6789479 |
London | 7285000 | Kinshasa | 5064000 |
St Petersburg | 4694000 | Alexandria | 3328196 |
分栏的思路也是先创建目标数据结构,再往里面填数据。
脚本:
A | B | |
---|---|---|
1 | =connect(“db”).query@x(“select * from World where Continent in(‘Europe’, ‘Africa’) and Population >= 2000000”) | |
2 | =A1.select(Continent:“Europe”) | =A1.select(Continent:“Africa”) |
3 | =create(‘Europe City’,Population,‘Africa City’, Population) | |
4 | =A3.paste(A2.(City),A2.(Population),B2.(City),B2.(Population)) |
A1 连接数据库并取数,选出欧洲和非洲超过 200 万人口的记录。
A2~B2 分别取出欧洲和非洲的数据。
A3 按目标结构创建一个空序表。
A4 使用序表的 paste 函数将值序列直接粘贴到对应列。