下面的查询将用于检索我的数据库中的结果,然后将其插入到 jtable 中。
TRANSFORM ABS(a.present)
SELECT e.ID, e.firstName, e.lastName, e.position, e.rate
FROM employees e LEFT JOIN attendance a ON e.ID = a.empID
GROUP BY e.ID, e.firstName, e.lastName, e.position, e.rate, a.present
PIVOT a.dateAttended
下面可以看到查询检索到的结果。
现在,我想做的是合并一些结果。当日期列的结果不同(例如 1 | 0 或 0 | 1)时,我的查询中就会出现问题。 ID 结果重复(以红色圈出)。我只是想问一些可能的方法,如何合并结果,如图像右侧所示。预先感谢您。
最佳答案
您的问题是您想要转换(即报告 a.present 的值),但您还将该字段包含在 GROUP BY 子句中。尝试使用 TRANSFORM First(Abs(a.present))
并从 GROUP BY 子句中删除 a.present
,即
TRANSFORM First(Abs(a.present))
SELECT e.ID, e.firstName, e.lastName, e.position, e.rate
FROM employees e LEFT JOIN attendance a ON e.ID = a.empID
GROUP BY e.ID, e.firstName, e.lastName, e.position, e.rate
PIVOT a.dateAttended
关于java - 使用 TRANSFORM 和 PIVOT 的交叉表查询重复行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23722802/