我有一个从Excel导入数据的Access数据库。数据库在两个表之间进行比较。我确实想要改变来自Excel的数据结构 - 例如。 Access表中没有主键。 当我进行查询时,我得不到正确的结果。我保持这很简单。
我已经在Dates字段中尝试了所有3个连接属性,并且每当我在Spec表中重复日期时,我的查询会给出四倍的结果。
以下是我的一次尝试:
SELECT Spec.Dates, Spec.Hours, Stats.Dates, Stats.Cell, Stats.Texting
FROM Spec RIGHT JOIN Stats ON Spec.Dates = Stats.Dates
GROUP BY Spec.Dates, Spec.Hours, Stats.Dates, Stats.Cell, Stats.Texting;
我希望这很清楚 - 如果需要,我可以附加一个示例数据库。
答案 0 :(得分:0)
试试这个:
SELECT Spec.Dates, Spec.Hours, FIRST(Stats.Cell) AS Cell, FIRST(Stats.Texting) AS Texting
FROM Spec RIGHT JOIN Stats ON Spec.Dates = Stats.Dates
GROUP BY Spec.Dates, Spec.Hours
这不太可能是您正在寻找的,但它可能会指出您遇到的问题。也许如果你能向我们展示一组记录和结果,无论是实际的还是预期的,我都能接近真正的答案。
For example:
Spec table:
5/5/2016 4:00
5/5/2016 5:00
Stats table:
5/5/2016 'Cell A' 'Texting A'
5/5/2016 'Cell B' 'texting B'
对于上述2x2记录的所有4种组合的查询,确实会产生4个单独的结果行。据我所知,您的数据库/导入中没有数据可以获得任何不同的数据(例如,仅将4:00时间与Cell A / Texting A stat相关联。)