Programming Solutions

Your Source for Information

Use of SQL Case Statement in SQL Update Statement

by Maeenul 6. January 2012 04:44
 1: IF EXISTS (SELECT * FROM dbo.sysobjects 
 2: WHERE id = object_id(N'[dbo].[SP_UPDATE_INFLUENCE_FACTOR]') AND OBJECTPROPERTY(id, N'IsProcedure') = 1)
 3: DROP PROCEDURE [dbo].[SP_UPDATE_INFLUENCE_FACTOR]
 4: GO CREATE PROCEDURE [dbo].[SP_UPDATE_INFLUENCE_FACTOR]
 5: @P_ID_IREA_MANAGER NUMERIC(8,0), @P_ID_PRODUCT NUMERIC(8,0),
 6:  @P_IS_POTENITAL NUMERIC(2,0), @P_NAC_DEN int AS 
 7: BEGIN UPDATE dbo.MANAGER_PROD_FACTOR SET POTENITAL=CASE @P_IS_POTENITAL 
 8: WHEN 1 THEN @P_NAC_DEN ELSE POTENITAL END, CONTINUOUS=CASE @P_IS_POTENITAL 
 9:  
 10: WHEN 0 THEN @P_NAC_DEN ELSE CONTINUOUS END  
 11: WHERE ID_USER = @P_ID_IREA_MANAGER and ID_PRODUCT = @P_ID_PRODUCT 
 12: UPDATE dbo.Product_Market_Factors SET 
 13:  Product_Market_Factors.Value_Potential=CASE @P_IS_POTENITAL WHEN 1 THEN 
 14: case @P_NAC_DEN when 10 then Influence_Factor.National_Value_Potential 
 15:  
 16: when 20 then 
 17:  
 18: Influence_Factor.Density_Value_Potential 
 19:  
 20: end 
 21:  
 22: ELSE 
 23:  
 24: Product_Market_Factors.Value_Potential 
 25:  
 26: END, Product_Market_Factors.Value_Continuos=CASE @P_IS_POTENITAL
 27:  
 28: WHEN 0 THEN case 
 29:  
 30: @P_NAC_DEN 
 31:  
 32: when 10 then 
 33:  
 34: Influence_Factor.National_Value_Continuos 
 35:  
 36: when 20 then 
 37:  
 38: Influence_Factor.Density_Value_Continuos 
 39:  
 40: end 
 41:  
 42: ELSE 
 43:  
 44: Product_Market_Factors.Value_Continuos 
 45:  
 46: END 
 47:  
 48: from dbo.Influence_Factor 
 49:  
 50: where Influence_Factor.ID_User = @P_ID_IREA_MANAGER and 
 51:  
 52: Influence_Factor.ID_Product = @P_ID_PRODUCT and Product_Market_Factors.ID_USER=@P_ID_IREA_MANAGER 
 53:  
 54: and 
 55:  
 56: Product_Market_Factors.ID_Product = @P_ID_PRODUCT and 
 57:  
 58: Influence_Factor.ID_HCA = Product_Market_Factors.ID_HCA SELECT 1 AS [STATUS], 
 59:  
 60: convert(varchar, ISNULL(getdate(),0), 121) AS [LATEST_TIME] 
 61:  
 62: END 
 63:  
 64: GO

 

Tags: ,

Category: SQL



Add comment

biuquote
  • Comment
  • Preview
Loading

Alpha Tags