2016-04-29 50 views
1

愚蠢的問題,但有SQL Server和和或與

Select * from TableA 
where 
System=1 and Acct=2 and FiscalNo=4 
or 
System=2 and FiscalNo=4 and SubAcct=1521 

Select * from TableA 
where 
(System=1 and Acct=2 and FiscalNo=4) 
or 
(System=2 and FiscalNo=4 and SubAcct=1521) 

發現其中的差別之間的差別括號 第一個查詢沒有括號

+2

除了易於閱讀,沒有其他區別。 –

回答

3

AND以高於OR的優先級結合。因此,沒有區別。

儘管如此,爲了清晰起見,請使用樣式2。這消除了對這個問題的需要。