我在.mdb文件上使用以下查询,结果如下。
SELECT tableA.id, tableA.type, tableA.date, SUM(tableA.val) AS total, tableB.SumB
FROM tableA LEFT JOIN tableB ON tableB.id = tableA.id
GROUP BY tableA.id, tableA.type, tableA.date, tableB.SumB ;
结果:
我只需要具有相同type
和date
的记录组中的第一条记录。
我会使用DISTINCT
,但问题是我有一个不同的字段(在此示例中为id
)。
有什么建议吗?
由于
P.S。案例2:
红色记录的ID相同,但我们有一个额外的列'name',其中包含不同的字符串值。
答案 0 :(得分:3)
使用min of id并将其从Group by子句中删除
SELECT min(tableA.id) as id, tableA.type, tableA.date,
SUM(tableA.val) AS total, tableB.SumB
FROM tableA LEFT JOIN tableB ON tableB.id = tableA.id
GROUP BY tableA.type, tableA.date, tableB.SumB ;