我们如何通过外键对多个记录进行分组

哈里·瓦拉卜·舒克拉

假设我有两个表,一个是A,第二个是B.A有主键Aid,B有包含Aid的外键B_foreignid,即表A主键和表B包含多个Aid作为外键。所以我的问题是如何分组通过Aid主键记录从表B提取

米拉齐兹

如果我正确理解了您的问题,是否要按外键对记录进行分组?

假设有一个表Employee:

| EmployeeId | EmployeeName | Salary | DepartmentId
| 1          | John         |  500   | 1
| 2          | Robert       |  400   | 3
| 3          | John         |  350   | 2
| 4          | Robert       |  200   | 2
| 5          | John         |  600   | 1

和表部:

| DepartmentId | DepartmentName
| 1            | IT
| 2            | Sales
| 3            | Accounting

因此,要将“雇员”表中的数据按部门划分(外键),您应该选择是否需要汇总功能,例如,找到每个部门的雇员人数,其工资总额,每个部门的最低和最高工资以及以此类推。

要获取每个部门的工资总额,可以使用查询:

SELECT SUM(Salary) AS 'Total Salary', DepartmentName AS 'Department'
FROM Employee e
INNER JOIN Department d ON e.DepartmentId d.DepartmentId
ORDER BY DepartmentName;

对于上述给定数据的查询结果将是:

| Total Salary | Department
| 400          | Accounting
| 1100         | IT
| 550          | Sales

大多数情况下,当您按某些条件对数据进行分组时,您希望与其一起使用聚合函数,但并非总是如此。

当您想使用聚合函数时:

当您不需要它们时:

但是,如果您只是想按某些条件对数据进行排序,以便在将它们分组时可以使用“ ORDER BY”,对于上面的示例,它看起来像这样:

SELECT EmployeeName AS 'Employee', DepartmentId AS 'Department'
FROM Employee
ORDER BY DepartmentId;

结果将是这样的:

| Employee | Department
| John     | 1
| John     | 1
| John     | 2
| Robert   | 2
| Robert   | 3

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我们如何通过内部联接对SQL中的列进行分组?

我们可以用相同的主键使不同表的多个外键链接吗?

我们如何查询外键并获得连接到外键的对象的结果

如何通过PHP中的多个键对数组进行分组

如何通过多个键对JSON数组数据进行分组

Django 通过对源进行分组来获取外键记录的数量

如果我们只有一个团队,我们如何同时进行多个冲刺?

通过键的多个属性对字典进行分组

通过scala中的多个键进行分组

MongoDB我们如何按字段值对数据进行分组

我们如何对Spark RDD中的数据进行排序和分组?

如何通过指定外键创建记录?

我们如何使用Angular通过TimeStamp数据类型对Firebase Firestore数据进行排序?

如果我们无法通过传递给该例程的频道进行监听,如何停止goroutine

我们如何仅通过实现 Comparable 接口对对象的元素进行排序?

我们如何使用 useEffect 进行多个 props 值更改

我应该如何在Django视图中创建一个可迭代的对象,该对象将允许我通过模板中的外键(或缺少外键)对项目进行分组?

我们如何记录与SmtpClient的SMTP对话?

即使id为null,我们如何显示记录?

如何仅选择我们记录的前5个?

我们如何对AWS CDK代码进行单元测试?我们应该吗?

我们如何进行情感分析并在每行文本旁边创建一个“情感”记录?

通过运行时已知的多个键进行分组

使用lodash通过多个键对对象进行分组

通过多个键对字典列表进行分组和汇总

通过多个键对Spark类型安全的聚合进行分组

如何计算多个外键并将其连续分组?

我们如何对闪亮的变量进行预处理步骤

我们如何使Squid进行反向nslookup?