2016-01-21 78 views
0

我正在尋找SQL Server(T-SQL)中的XOR運算符或等效函數。我有這個在我的查詢:SQL Server中的XOR運算符

WHERE 
    CompanyInfo.INSTANCERELATIONTYPE = 41 
    AND (CompanyInfo.DATAAREA = @DataAreaId OR CompanyInfo.DATAAREA = @DataAreaIdDeflt) 

我想將其更改爲

WHERE 
    CompanyInfo.INSTANCERELATIONTYPE = 41 
    AND (CompanyInfo.DATAAREA = @DataAreaId XOR CompanyInfo.DATAAREA = @DataAreaIdDeflt) 
+0

'選擇1^3 AS XorExample' – Rabbit

回答

-1

AFAIK有在SQL Server沒有這樣的運營商,你必須把它寫出來自己:

WHERE CompanyInfo.INSTANCERELATIONTYPE = 41 
     AND (CompanyInfo.DATAAREA = @DataAreaId OR (CompanyInfo.DATAAREA <> @DataAreaId AND CompanyInfo.DATAAREA = @DataAreaIdDeflt)) 
+0

這是更好地搜索已經首先現有的答案的標準問題對我來說,即使你的答案是正確的。它就在這裏。 – cassandrad

+0

@cassandradied,我是一個忙碌的人,我不會爲每個我看到的問題尋找謎。如果我看到一個問題,我可以回答,我給我的答案。我認爲兩個降價是不正確的答案。 – HoneyBadger

+0

此外,我會努力在您的鏈接中獲得接受的答案,以便在此類問題的情況下工作。我認爲我的解決方案更容易,更直觀 – HoneyBadger