gpt4 book ai didi

MySQL 连接导致重复结果

转载 作者:行者123 更新时间:2023-11-29 23:07:12 25 4
gpt4 key购买 nike

我正在尝试从两个表中获取查询。这应该很简单;然而,我的结果是重复的。我无法使用 DISTINCT 或 GROUP BY,因为没有唯一的 ID。为了进行测试,我的主表有 87 行。由于没有确定 WHERE,我得到了 174 个结果。我的两个表如下:

表 - lifegroups_attendance(日期是日期字段,时间是 varchar)
没有唯一 ID - 日期/时间/组的组合将最接近它

date | time | group| attendance
--------------------------------
1/3/15 | 6:30 PM | Adults | 125
1/3/15 | 11:00 AM | Adults | 621
1/4/15 | Saturday | Kids | 289
1/4/15 | Sun PM | Adults | 621

表 - sat_week_date_map(一周的开始是周六,而不是 MySQL 内置的周日或周一选项)
日期是主要 ID

date | week
---------------
1/3/15 | 1
1/4/15 | 1
1/5/15 | 1
1/10/15 | 2

我需要得到如下所示的结果:

week | group | attendance
1 | adults | 125
1 | adults | 621
1 | adults | 621 (This is not a duplicate - date/time is different)
2 | adults | 475
2 | adults | 276
2 | kids | 289

相反,我得到

week | group | attendance
1 | adults | 125
1 | adults | 621
1 | adults | 621 (This is not a duplicate - date/time is different)
2 | adults | 475
2 | adults | 276
2 | kids | 289
1 | adults | 125 (repeats every record over again)
1 | adults | 621
1 | adults | 621 (This is not a duplicate - date/time is different)
2 | adults | 475
2 | adults | 276
2 | kids | 289

我当前使用的查询是:

SELECT   wd.week, la.group AS group, la.attendance
FROM sat_week_date_map AS wd JOIN lifegroups_attendance AS la
ON la.date = wd.date;

最佳答案

您可以使用另一个查询来扭曲您的查询,然后使用不同的类似:

SELECT distinct * 
FROM (SELECT wd.week, la.group AS group, la.attendance
FROM sat_week_date_map AS wd JOIN lifegroups_attendance AS la
ON la.date = wd.date)

关于MySQL 连接导致重复结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28244891/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com