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 函数将值序列直接粘贴到对应列。
