我是一个SQL新手,我使用mssql2005加入条件取决于参数
我喜欢做输入参数加入动作depression。
CREATE PROCEDURE SelectPeriodicLargeCategoryData
@CATEGORY_LEVEL CHAR(1),
@CATEGORY_CODE VARCHAR(9)
AS
...
JOIN CATEGORY_AD_SYS CAS WITH(NOLOCK)
ON CA.CATEGORY_ID = [[[[[ HERE ]]]]
以上的sql。
如果@CATEGORY_LEVEL = 'L'
话,我想加入上CAS.LCATEGORY
否则,如果@CATEGORY_LEVEL = 'M'
话,我想加入上CAS.MCATEGORY
否则,如果@CATEGORY_LEVEL = 'S'
话,我想加入上CAS.SCATEGORY
...
我怎样才能做到这一点?
SELECT语句很长..所以我只是想改变取决于输入参数 – 2010-05-10 07:36:45
如果加盟条件它很长,那意味着CASE会表现得更差。它有3种不同的JOIN,所以它是3种不同的SELECT – gbn 2010-05-10 07:40:54