我试图像成才:,其中表1的值不是在表2中,并显示结果如表3
Select Items
From Table1
Where Not Exists (
Select Items
From Table2
Where Table2.Items = Table1.Items) As Table3.Items
,但不知何故没有工作,所以可以anywone告诉我怎样才能实现这一目标?
我试图像成才:,其中表1的值不是在表2中,并显示结果如表3
Select Items
From Table1
Where Not Exists (
Select Items
From Table2
Where Table2.Items = Table1.Items) As Table3.Items
,但不知何故没有工作,所以可以anywone告诉我怎样才能实现这一目标?
如果你想使用这一个新表,你可以试试这个:
Select Items
Into Table3
From Table1
Where Not Exists (Select Items From Table2 Where Table2.Items = Table1.Items)
不错,但它创造临时或永久表? – 2012-02-16 14:45:42
@BerkerYüceer - 这是创建一个新的永久表。如果您只想在另一个查询中使用它,但不想将其作为表创建,则可以将其用作派生表:“SELECT .. FROM(从表1中选择Itmes从表1不存在..... )AS Table3 – Lamak 2012-02-16 14:49:51
是啊我试过那里,但似乎我误以为SELECT * FROM(....)AS TABLE3的用法。它现在的工作谢谢.. – 2012-02-16 14:52:26
如果您正在寻找t3
行那些在t1
存在,但不是在t2
,尝试:
select t3.Items
from table3 t3
where exists
(
select *
from table1 t1
where t1.Items = t3.items
)
and not exists
(
select *
from table2 t2
where t2.Items = t3.items
)
我想你误会了我。我只使用Table3来显示Table1和Table2之间的比较结果,但这是另一个有用的答案,对我来说很有用,所以+1。 – 2012-02-16 14:48:42
另一种解决方案是except
:
select *
from
(
Select Items
From Table1
except
Select Items
From Table2
) as Table3
不错,我喜欢这个 – 2012-02-16 14:32:12
你给“Table3”赋予结果是什么意思?结果应该插入table3中吗? – 2012-02-16 13:54:50
你的意思是说SQL没有给出预期的结果,或者代码给你一个错误或者运行时没有给出预期的结果。你能在这里粘贴相关的代码吗? – ImranIlahi 2012-02-16 14:03:36
表3实际上并不是之前创建的另一个表。 它只是将查询的结果显示为表3。 – 2012-02-16 14:31:33