首页 > 解决方案 > SQL 查询 - 根据非排序值限制生成的查询行

问题描述

我有 2 张桌子

表格1

per_id | per_name
-------+-----------   
1      | joe
2      | mike
x      | xxxx

和第二张桌子

per_id | job_q
-------+-------    
1      | 500
1      | 250
2      | 125
2      |  10
3      |  54
...

我需要第三张表,我在其中汇总所有 job_q 并按 per_name 分组并按 job_q asc 排序

表3

per_name | job_q
---------+---------    
joe      | 750
mike     | 135
...

如何在保持 job_q 排序的同时将结果限制为特定的 per_name?

标签: sqlite

解决方案


编辑 - 我假设 OP 正在谈论 qsql,它是 KDB 数据库的一部分(因为使用了q标签/标签)

像这样的东西?

q)`job_q xdesc select sum job_q by per_name from (t2 lj 1!t1) where per_name in `joe`mike
per_name| job_q
--------| -----
joe     | 750
mike    | 135

假设您的表在内存中。

或者,如果您想按 ID 过滤:

q)`job_q xdesc select sum job_q by per_name from (t2 lj 1!t1) where per_id=2
per_name| job_q
--------| -----
mike    | 135

推荐阅读