0

「=」を「いいね」に置き換えても結果が得られないspを実行しようとしています

私のクエリは以下に定義されています、

ALTER PROCEDURE [dbo].[SelectMentor] 
    -- Add the parameters for the stored procedure here
    @Zip varchar(20)=NULL,
    @Company varchar(200)=NULL,
    @Designation varchar(100)=NULL,
    @Interest varchar(200)=NULL
    --@JobFunc varchar(200)=NULL
AS
BEGIN
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
    SET NOCOUNT ON;

    select ub.user_Id,ub.user_Fullname,up.Designation,up.Company from UserBasics UB 
inner join UserProfession up on  
ub.user_Id=up.Prof_ID 
where  (@Zip is null or ub.user_Zip = @Zip) and
    (@Interest is null or ub.user_Need = @Interest) and
--  (@JobFunc is null or m.mentor_jobFunction= @JobFunc) and
    (@Company is null or up.Company=@Company) and
    (@Designation is null or up.Designation=@Designation)

正常に動作していますが、「=」を「Like」に置き換えると、

select ub.user_Id,ub.user_Fullname,up.Designation,up.Company from UserBasics UB 
inner join UserProfession up on  
ub.user_Id=up.Prof_ID 
where  (@Zip is null or ub.user_Zip like '%@Zip%') and
    (@Interest is null or ub.user_Need like '%@Interest%') and
--  (@JobFunc is null or m.mentor_jobFunction= @JobFunc) and
    (@Company is null or up.Company like '%@Company%') and
    (@Designation is null or up.Designation like '%@Designation%')

動いていない ???

あなたの提案を願っています

ありがとう

4

2 に答える 2

4

LIKEの例では、これらの実際の文字列値、つまりリテラルテキスト「@Zip」を含むuser_Zipを照合しようとしています。

次のように連結する必要があります。

where  (@Zip is null or ub.user_Zip like '%' + @Zip + '%') and
... etc
于 2013-01-24T09:46:54.947 に答える
2

これを試して

select ub.user_Id,ub.user_Fullname,up.Designation,up.Company from UserBasics UB 
    inner join UserProfession up on  
    ub.user_Id=up.Prof_ID 
    where  (@Zip is null or ub.user_Zip like '%'+@Zip+'%') and
        (@Interest is null or ub.user_Need like '%'+@Interest+'%') and
    --  (@JobFunc is null or m.mentor_jobFunction= @JobFunc) and
        (@Company is null or up.Company like '%'+@Company+'%') and
        (@Designation is null or up.Designation like '%'+@Designation+'%')

ラージ

于 2013-01-24T09:48:08.650 に答える