7.2 关联查询:两表多字段关联同时过滤
在两个关联的表中,根据多字段关联条件筛选记录后,分组汇总。
根据相互关联的分数表和学生资料表,查询一班每个学生的各科总分。

使用 A.join() 函数的 @i 选项,删除不匹配的记录。在连接时把班级指定为常数条件(一班),从而实现内连接。
脚本:
| A | |
|---|---|
| 1 | =connect(“db”) |
| 2 | =A1.query(“select * from Score”) |
| 3 | =A1.query@x(“select * from Student”) |
| 4 | =A2.join@i(ID:“Class one”, A3:ID:Class) |
| 5 | =A4.groups(ID; sum(Score):TotalScore) |
A1 连接数据库
A2 查询成绩表
A3 查询学生表
A4 使用 join 函数的 @i 选项,按 ID 和 Class 进行多字段内连接
A5 分组汇总每个学生的总分
运行结果:
| ID | TotalScore |
|---|---|
| 1 | 230 |
| 2 | 258 |
| 3 | 228 |
| … | … |
