Sql server 2005 比较两种观点
我现在有两种观点得出了不同的结果。 一个在旧数据库中,另一个在新数据库中。Sql server 2005 比较两种观点,sql-server-2005,join,views,Sql Server 2005,Join,Views,我现在有两种观点得出了不同的结果。 一个在旧数据库中,另一个在新数据库中。 ond视图拉入约50000条记录,而新视图拉入约40000条记录 除了一列或两列之外,它们几乎都有相同的数据 有没有办法把两者结合起来,看看有什么不同 在查询和连接方面,我的知识有限 我尝试了左加入和右加入,但它给了我100000多个结果。我不想那样。我想要~50000个结果,在没有信息的地方让列为空 这可能吗?谢谢你可以试试这个: SELECT * FROM OldView EXCEPT SELECT
ond视图拉入约50000条记录,而新视图拉入约40000条记录
除了一列或两列之外,它们几乎都有相同的数据 有没有办法把两者结合起来,看看有什么不同 在查询和连接方面,我的知识有限 我尝试了左加入和右加入,但它给了我100000多个结果。我不想那样。我想要~50000个结果,在没有信息的地方让列为空 这可能吗?谢谢你可以试试这个:
SELECT * FROM OldView
EXCEPT
SELECT * FROM NewView
您可以尝试以下方法:
SELECT * FROM OldView
EXCEPT
SELECT * FROM NewView
您可以尝试以下方法。首先使用左联接联接表,然后从新联接中过滤空值 像这样的
select *
from oldview o
left join newview n
on o.field = n.field
where n.value is null
通过这种方式,您可以组合它们,并使用where语句过滤newview值。问题是,你先把它们组合起来,然后过滤它们 您可以尝试以下方法。首先使用左联接联接表,然后从新联接中过滤空值 像这样的
select *
from oldview o
left join newview n
on o.field = n.field
where n.value is null
通过这种方式,您可以组合它们,并使用where语句过滤newview值。问题是,你先把它们组合起来,然后过滤它们 我有一个列在两个表中都被命名为不同的东西,我希望这些列并排出现。这证明是一个问题,因为它一直告诉我,在下一个视图中,其中一列无效,反之亦然。这有办法吗?谢谢视图的所有结果列必须具有唯一的名称。因此,您必须使用“As”重命名列,如
,OldView.Col1为oldCol1,
。我在两个表中有一个列的名称不同,希望将这些列并排排列。这证明是一个问题,因为它一直告诉我,在下一个视图中,其中一列无效,反之亦然。这有办法吗?谢谢视图的所有结果列必须具有唯一的名称。因此,您必须使用“As”将列重命名为oldCol1,,如,OldView.Col1。