我使用的是SQL Server 2012,使用的代码工作,但我知道它不是正确的这样做的方法。
我尝试仅在值尚未存在时向表中添加行,而是从两个不同的列添加行。
INSERT INTO #TEMP_Final
SELECT
a.ClaimNbr
,a.DisputeNbr
,a.DisputeAmt
,a.CardAcctNbr
,b.CreditAmt
,b.CreditRefNbr
FROM #TEMP_Disputes a
JOIN #TEMP_Credits b
ON a.CardAcctNbr = b.CardAcctNbr
AND a.DisputeAmt = b.CreditAmt * -1
AND a.DisputeRowNbr = b.CreditRowNbr
WHERE a.DisputeNbr NOT IN (SELECT DisputeNbr FROM #TEMP_Final)
AND b.CreditRefNbr NOT IN (SELECT CreditRefNbr FROM #TEMP_Final)
是否有更合适的方法来获得相同的结果?
感谢。
答案 0 :(得分:0)
使用NOT EXIST子句......您可以避免使用NOT IN查询。
def moveZeroes(self, nums):
nums.sort(key=lambda x: x == 0)
# Or more efficiently but obscurely:
# nums.sort(key=(0).__eq__)
# Or with an operator import to get speed with less obscurity:
# nums.sort(key=operator.not_)