【发布时间】:2012-12-23 05:07:14
【问题描述】:
我四处寻找条件连接,但似乎他们正在尝试做一些与我正在尝试不同的事情。对于这个问题,我会稍微简化一下问题。
我有三张桌子:Users, Clients, and Employees.
Users 表有两列,AssociatedID and UserType.
UserType 是 "Client" 或 "Employee,",AssociatedID 是 Clients 或 Employees 表中的对应 ID。
问题是,Clients 和Employees 都使用整数作为ID,所以每个表可以有相同的ID 来表示完全不同的东西(而不是GUID,这可以避免这个问题)。
我想要的是一个查询,它将查看 Users 中的一行,并说明 UserType 是否为 Employee,然后在 Employees 表的 ID 上加入 AssociatedID,如果 UserType 是 Client,然后在 Clients 表的 ID 上加入 AssocaitedID。因此,如果客户和员工都有一个名称列,我可以获得每个用户的所有名称,无论他们是客户还是员工。我正在使用 SQL Server 2008 R2,如果这在这里有所不同的话。
【问题讨论】:
标签: sql sql-server tsql join