编写查询(最好是在 sqlalchemy 中)以计算在 postgres table 中由另一列分组的列中唯一值的出现次数
Write a query (preferably in sqlalchemy) to count number of occurrence of unique values in a column grouped by another column in a postgres table
我的项目使用 AWS Chalice 框架和 sqlalchemy。
这是项目中的示例 table。
我需要从 table 获取两种格式的数据。我需要两个单独的查询,它们应该以不同的格式提供数据,因为两者都有单独的 api。请不要合并查询以同时提供两种格式的数据,因为数据集很大并且会出现性能问题,并且如前所述,我需要单独使用它们。
第一种格式:
我想获取按城市分组的不同工作的人数,如果工作字段是 empty/none,则应将其视为无工作。
{
"Bangalore":{
"Engineer": 2,
"No Job": 2,
"Paramedic": 1,
},
"Delhi":{
"Architect": 2,
"Doctor": 1,
},
"Mumbai":{
"Doctor": 2,
"Engineer": 1,
"No Job": 1,
}
}
第二种格式:
我想获取按城市分组的独特职位和人员的数量。
{
"Bangalore":{
"job_titles": 3,
"persons": 5,
},
"Delhi":{
"job_titles": 2,
"persons": 3,
},
"Mumbai":{
"job_titles": 3,
"persons": 4,
}
}
解释:
- 班加罗尔 有 2 名工程师、1 名护理人员和 2 名失业人员,因此有 3 名独特的 job_titles 和 5 名人员。
- Delhi 有 2 个建筑师和 1 个医生,所以有 2 个独特的 job_titles 和 3 个人。
- 孟买 有 2 名医生、1 名工程师和 1 名失业人员,因此有 3 名独特的 job_titles 和 4 名人员。
目前,我正在通过 运行 一个简单的 Select * from table
类型查询实现这一点,并对其进行迭代以形成嵌套字典(在 Python 中)。问题是这个处理需要很长时间。
我不确定这种格式的数据是否可以实现。因此,任何可以轻松快速(实时)转换数据的查询都将受到赞赏。
我已经在这个问题上停留了一个多月了,所以感谢任何类型的帮助。但请尝试在 sqlalchemy 查询中提供答案。
谢谢
我的项目使用 AWS Chalice 框架和 sqlalchemy。
这是项目中的示例 table。
我需要从 table 获取两种格式的数据。我需要两个单独的查询,它们应该以不同的格式提供数据,因为两者都有单独的 api。请不要合并查询以同时提供两种格式的数据,因为数据集很大并且会出现性能问题,并且如前所述,我需要单独使用它们。
第一种格式:
我想获取按城市分组的不同工作的人数,如果工作字段是 empty/none,则应将其视为无工作。
{
"Bangalore":{
"Engineer": 2,
"No Job": 2,
"Paramedic": 1,
},
"Delhi":{
"Architect": 2,
"Doctor": 1,
},
"Mumbai":{
"Doctor": 2,
"Engineer": 1,
"No Job": 1,
}
}
第二种格式:
我想获取按城市分组的独特职位和人员的数量。
{
"Bangalore":{
"job_titles": 3,
"persons": 5,
},
"Delhi":{
"job_titles": 2,
"persons": 3,
},
"Mumbai":{
"job_titles": 3,
"persons": 4,
}
}
解释:
- 班加罗尔 有 2 名工程师、1 名护理人员和 2 名失业人员,因此有 3 名独特的 job_titles 和 5 名人员。
- Delhi 有 2 个建筑师和 1 个医生,所以有 2 个独特的 job_titles 和 3 个人。
- 孟买 有 2 名医生、1 名工程师和 1 名失业人员,因此有 3 名独特的 job_titles 和 4 名人员。
目前,我正在通过 运行 一个简单的 Select * from table
类型查询实现这一点,并对其进行迭代以形成嵌套字典(在 Python 中)。问题是这个处理需要很长时间。
我不确定这种格式的数据是否可以实现。因此,任何可以轻松快速(实时)转换数据的查询都将受到赞赏。
我已经在这个问题上停留了一个多月了,所以感谢任何类型的帮助。但请尝试在 sqlalchemy 查询中提供答案。
谢谢