在MS Access中将两个相似的字段合并为一个

3

我有5列数据:c1=物品,c2=LHrs,c3=WHrs,c4=主管,c5=工人。构造方式如下:

ITEM  LHRS  WHRS  LEAD  WORKER
123   25    10    John  Gary
456   15    20    John  John 

我希望结果呈现如下所示:

我想要的结果是这样的:

RESOURCE  ITEM  HRS
John       123   25
Gary       123   10
John       456   35 

在名称上连接并使用“AS资源”显示结果并不能按照我想要的方式细分。基本上,我想知道每个人每项工作的工作小时数,无论他们是领导(LHrs)还是工人(WHrs)。

有什么想法吗?

1个回答

3

如何使用 UNION 查询?

SELECT item, person, sum(hrs) AS sumhours 
FROM (
   SELECT Item, lhrs as hrs,lead as person from wk
   UNION ALL
   SELECT Item, whrs, worker AS person from wk) a
GROUP BY item, person

wk是表的名称。


这样做不会导致项目456出现两次吗?当然,您可以使用where子句来解决这个问题。由于需要添加Lhrs和whrs,并将它们组合在一起而不是作为2个单独的条目进行处理。 - Halfwarr
2
不会。456是两行数据:“John,lead,15”,“John,worker,20”,它们将被添加到“John,35”中。 - Fionnuala
1
@Halfwarr 因为它使用标准的 SQL,所以在 sqlfiddle 上测试非常方便。 - Conrad Frix

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接