0
试图梳理这一点的来源......联盟2表和设定值基于数据
我需要一个查询,将两个表合并成1,我有以下...
select PersonId, PersonFirstName, PersonLastName
from dbo.Person
UNION
SELECT AdminId as PersonsId, AdminFirstName as PersonsFirstName, AdminLastName as PersonsLastName
from dbo.UserAdmins
我想创建一个新列,并根据记录的来源分配“Person”或“Admin”的值。因此,如果记录1-10来自dbo.Person,则新列将以“Person”填充,并且如果下一个5来自Admin,则新列将以“Admin”填充。
这似乎相对简单,但不知道从哪里开始。
+1,但你真的应该让'UNION ALL'而不是'UNION'。 'UNION'中每个子查询的行根据源标识符的字面意义是不同的:一个简单的'UNION'必须对结果进行排序并将其解除无效。使用'UNION ALL'删除额外开销。 – 2012-07-30 18:09:34
@NicholasCarey正确,改变了它。 – Taryn 2012-07-30 18:10:49
谢谢。我没有意识到这很简单。 – user1366606 2012-07-30 18:17:26