對於SQL專家來說,這可能非常容易。如果在第一個表中不存在,則從另一個表中選擇記錄的最快方法
我有兩個表:
Table A TID Desc
Table B TID Desc
我知道我能做到IsExists
,但不知道這是最快的方法。要求是,如果記錄存在於表A中,則對於給定的TID,記錄應該從表A中讀取,否則從表B中讀取。記錄肯定存在於表B中
對於SQL專家來說,這可能非常容易。如果在第一個表中不存在,則從另一個表中選擇記錄的最快方法
我有兩個表:
Table A TID Desc
Table B TID Desc
我知道我能做到IsExists
,但不知道這是最快的方法。要求是,如果記錄存在於表A中,則對於給定的TID,記錄應該從表A中讀取,否則從表B中讀取。記錄肯定存在於表B中
我不認爲Exists
會滿足你的需求。嘗試使用Left Outer Join
select Coalesce(A.somecol,B.somecol)
from tableB B
left outer join tableA A
on B.TID = A.TID
Where B.TID = X --Make sure you add the filter to TableB
select isnull(A.val, B.val)
from B
left join A
on B.TID = A.TID
我會加在哪裏B.TID = X和嘗試。 –
做左表連接B表,然後合併列 –