检查下面的例子。尝试进行 sql 查询,该查询将在 Derby 数据库中运行
Check the example below. Trying to make a sql query which will work in Derby database
我有两个table。
Table 1
Name Month Hours
A 5 2
B 20 1
C 30 5
B 4 6
A 6 3
Table 2
Name Hours2
A 5
B 6
A 8
结果Table
Name Hours Hours2 month
A 2 13 5
A 3 13 6
B 1 6 20
B 6 6 4
所以这里发生的事情是,两个 table 之间有一个连接,条件是 Name 匹配。在个人 table 上, 应该 分组以删除多个条目,但如果我这样做,则需要在那里使用聚合函数。
在 Hours 和 Hours2 上使用聚合函数将产生其中的大部分,但如果我想将月份字段值视为针对它的唯一值,则不可能按组来尝试 partition by 不工作,因为 derby 不支持它。
我无法进行可以执行上述操作的查询。
我认为以下内容适合您
select t1.Name,t1.Hours,t2.Hours2,t1.month from Table1 t1
inner join
( SELECT
Name,SUM(Hours2) as Hours2
from Table2 group by Name
) t2 on t1.Name=t2.Name
我有两个table。
Table 1
Name Month Hours
A 5 2
B 20 1
C 30 5
B 4 6
A 6 3
Table 2
Name Hours2
A 5
B 6
A 8
结果Table
Name Hours Hours2 month
A 2 13 5
A 3 13 6
B 1 6 20
B 6 6 4
所以这里发生的事情是,两个 table 之间有一个连接,条件是 Name 匹配。在个人 table 上, 应该 分组以删除多个条目,但如果我这样做,则需要在那里使用聚合函数。
在 Hours 和 Hours2 上使用聚合函数将产生其中的大部分,但如果我想将月份字段值视为针对它的唯一值,则不可能按组来尝试 partition by 不工作,因为 derby 不支持它。
我无法进行可以执行上述操作的查询。
我认为以下内容适合您
select t1.Name,t1.Hours,t2.Hours2,t1.month from Table1 t1
inner join
( SELECT
Name,SUM(Hours2) as Hours2
from Table2 group by Name
) t2 on t1.Name=t2.Name