全部, 我正在絞盡腦汁,試圖找出解決這個問題的最佳方法。基本上,我想比較兩個表,並在滿足某些條件時插入現有記錄的副本 - 例如名爲「OrderComplete」的列是否爲yes或記錄當前不存在於插入表中。我正在尋找使用IF語句或CASE,但我堅持IF部分 - 下面是我想運行的兩個查詢,但有一段時間寫IF語句。任何想法或想法?如果/ case語句使用sql查詢問題
這兩個查詢都工作得很好,但我需要一個條件來查找重複項,如果插入表的項目「OrderComplete」設置爲yes,則只有副本。我可以放一個簡單的公式,但是想在IF區插入一個SELECT或更復雜的東西。也許你不能比較IF語句中的兩個表,現在只是難倒了。
IF ?????
BEGIN
use [PaperDB]
INSERT INTO dbo.ORDERED_PARTS_TABLE
([OrderPN]
,[OldPN]
,[OldPN2]
,[PartDescription]
,[WhereUsed]
,[LocationStored]
,[LocationDescription]
,[AlternateLocationStored]
,[AlternateLocationDescription]
,[QuantityOnHand]
,[ReorderQuantity]
,[QuantityToOrder]
,[Category]
,[LastUpdated]
,[spare]
,[spare2]
,[spare3])
SELECT s.orderpn, s.oldpn, s.oldpn2, s.partdescription, s.whereused, s.locationstored,
s.locationdescription, s.alternatelocationstored, s.alternatelocationdescription,
s.quantityonhand, s.reorderquantity, s.reorderquantity - s.QuantityOnHand , s.category,
s.lastupdated, s.QuantityOnHand , s.ReorderQuantity , s.Spare3
FROM dbo.PARTS_ORDER_TABLE as s
LEFT OUTER JOIN
ORDERED_PARTS_TABLE as t
on s.OrderPN = t.OrderPN
WHERE (NOT EXISTS (SELECT *
from ORDERED_PARTS_TABLE
where s.OrderPN = t.OrderPN))
END
ELSE
BEGIN
use [PaperDB]
INSERT INTO dbo.ORDERED_PARTS_TABLE
([OrderPN]
,[OldPN]
,[OldPN2]
,[PartDescription]
,[WhereUsed]
,[LocationStored]
,[LocationDescription]
,[AlternateLocationStored]
,[AlternateLocationDescription]
,[QuantityOnHand]
,[ReorderQuantity]
,[QuantityToOrder]
,[Category]
,[LastUpdated]
,[spare]
,[spare2]
,[spare3])
SELECT s.orderpn, s.oldpn, s.oldpn2, s.partdescription, s.whereused, s.locationstored,
s.locationdescription, s.alternatelocationstored, s.alternatelocationdescription,
s.quantityonhand, s.reorderquantity, s.reorderquantity - s.QuantityOnHand , s.category,
s.lastupdated, s.QuantityOnHand , s.ReorderQuantity , s.Spare3
FROM dbo.PARTS_ORDER_TABLE as s
LEFT OUTER JOIN
ORDERED_PARTS_TABLE as t
on s.OrderPN = t.OrderPN
WHERE s.OrderPN = t.OrderPN AND t.OrderComplete = 'yes'
END
我添加了sql-server標記,因爲語法看起來像SQL Server。 –
首先,在'if'之前移動'use'語句。兩個都。 –
如果你使用SQL Server,你可以遵守嗎?如果是的話,你可以遵守什麼版本? – JodyT