【发布时间】:2014-11-16 02:59:07
【问题描述】:
现在我有一个Main 表,我正在其中上传数据。因为Main 表有许多不同的重复项,我将Main 表中的各种数据附加到其他表中,例如用户名、电话号码和位置,以保持优化。一旦我从Main 表中剥离了所有内容,然后我将剩下的内容附加到最终优化的Main 表中。不过,在此之前,我运行了一个选择查询,将所有剥离的表与原始 Main 表连接起来,以便将每个表的 ID 与正确的数据连接起来。例如:
Original Main Table
--Name---------Number------Due Date-------Location-------Charges Monthly-----Charges Total--
John Smith 111-1111 4/3 Chicago 234.56 500.23
Todd Jones 222-2222 4/3 New York 174.34 323.56
John Smith 111-1111 4/3 Chicago 274.56 670.23
Bill James 333-3333 4/3 Orlando 100.00 100.00
这被分成 3 个表(名称、编号、位置),然后有一个包含一年中所有日期的日期表:
Name Table Number Table Location Table Due Date Table
--ID---Name------ -ID--Number--------- ---ID---Location---- --Date---
1 John Smith 1 111-1111 1 Chicago 4/1
2 Todd Jones 2 222-2222 2 New York 4/2
3 Bill James 3 333-3333 3 Orlando 4/3
在剥离原始表之前,我运行了一个选择查询,从 3 个新表中获取 ID,并根据它们与原始 Main 表的连接将它们连接起来。
Select Output
--Name ID----Number ID---Location ID---Due Date--
1 1 1 4/3
2 2 2 4/3
1 1 1 4/3
3 3 3 4/3
当我需要引入一个无法绑定到原始主表的新表时,我的问题就出现了。我有一个库存表,很像原来的Main 表,有重复,需要优化。我通过创建一个辅助表来做到这一点,该表将所有重复的设备取出并将它们放在自己的表中,然后剥离用户名和编号并将它们放入表中。我想将这个新设备表中的 ID 添加到我上面的选择输出中。结果:
Select Output
--Name ID----Number ID---Location ID---Due Date--Device ID---
1 1 1 4/3 1
2 2 2 4/3 1
1 1 1 4/3 2
3 3 3 4/3 1
与前面的表不同,设备表和原来的Main表没有关系,这也是让我头疼的地方。我似乎无法找到一种方法来实现这一点......有没有办法做到这一点?
【问题讨论】:
-
如果你能缩小你的问题范围(它看起来像一个项目开发规范)会有所帮助。如果您想从表中删除重复项,可以选择在查询中使用 SELECT DISTINCT,这可能会有所帮助。问候,
-
问题是我无法将设备表与输出其余 ID 的选择查询连接起来,因为设备与原始
main表之间没有关系。 -
正如我已经说过的,请缩小你的问题范围:这个问题是由删除重复引起的,还是有另一个问题,不管重复(比如在表关系中添加外键等) )?谢谢和问候,
-
我不确定你想要什么样的答案。您已经指出问题在于表之间没有关系。如果您的目标是在结果表中显示这两个表,则可以将这两个表合并在一起。你应该更具体一点。
-
重复确实与它无关,我只是为了细节而提到它。我不知道如何进一步缩小问题范围。
device表和main表需要加入,但由于缺少关系,我一直无法加入它们。抱歉这么多细节(可能有用也可能没用),有人告诉我我在上一个问题中没有提供足够的细节。
标签: sql database ms-access join