2016-08-02 56 views
1

我有一個數據表,如下所示。我已經根據ID號創建了具有不同邏輯的多個視圖。根據列值從存儲過程調用視圖

任何人都可以請告訴我:是否有可能有一個存儲過程,將執行一個視圖基於ID表中可用?

在此示例中:ID 1001具有不同的視圖,ID 1002具有另一個視圖。

該表格將具有針對特定 ID的數據,該給定時間點。在加載具有不同ID的數據之前, 和將被截斷

DDL:

declare @table table 
(
id int, 
sales numeric (10,2), 
years date 
) 

insert @table 

select 1001 , 25000,'2005-05-01' union all 
select 1001,256565,'2006-10-01' union all 
select 1002 , 55000,'2005-10-11' union all 
select 1002,56565,'2006-11-21 ' 

感謝

+0

後面觀看創建每個ID? – TheGameiswar

+0

爲什麼你爲每個ID創建單獨的視圖?你應該創建一個視圖,然後使用where子句。或者也許一個接收id作爲參數的存儲過程? –

+1

你不能**執行**視圖 - 你可以**選擇**,但是... –

回答

3

你需要你能分享一些樣品的邏輯是這樣的?:

If @id = 1001 
SELECT * FROM VIEW_1 
If @id = 1002 
SELECT * FROM VIEW_2 
+0

:謝謝Slava ....我會盡力實施建議的解決方案。 –