0
我有一個搜索存儲過程。存儲過程接收一些名稱爲@ filter1,@ filter2等的參數。這些參數指示過程是否將返回上下文過濾器。但是,該過程可能會返回錯誤。喜歡的東西:
if error
select * from erros
else
select 0
if filter1
select * from tablea
else
select 1
select * from search
的select 0
和select 1
陳述存在只是爲了保持在相同的位置進行搜索,但他們造成了一點麪條代碼在後端,因爲我要檢查表內容,以圖如果出現錯誤或不存在,並評估幾個過濾器參數以便正確構建我的對象。檢查表格中有多少行很容易。
我的問題是,是否有一種非常昂貴的方式來返回空數據集,以避免選擇0和選擇1語句?
列,你在哪裏加載數據?您可以在代碼中使用過濾器來加載一個或三個數據表(例如)。在調用存儲之前評估代碼中的過濾器,然後您將知道需要加載多少數據(一個或三個) –
所以我不能?是嗎? – user1330271
你也可以嘗試'從tablea'選擇top 0 *並從tableb'選擇top 0 *。這將返回具有「TableA」和「TableB」列的空行。如果這對你有用,通知我,我會把它作爲答案,所以你可以打勾! –