语句写的复杂了,可以简写为如下create proc try_temp
@mem_name varchar(6)=null, --用户输入用户名
@mem_card varchar(20)=null --用户输入用户卡
as
Begin
Declare @selectstring varchar(100) --声明模糊组合查询字串,留待where子句中利用
Set @selectstring=IsNull(' and tablea.mem_name Like ''%'+@mem_name+'%''','')+IsNull(' and tableb.mem_card like ''%'+@mem_card+'%''','')
Set @selectstring='select * from tablea inner join tableb on tablea.mem_id=tableb.mem_id where 1=1'+@selectstring
EXEC(@selectstring)
End
GO
@mem_name varchar(6)=null, --用户输入用户名
@mem_card varchar(20)=null --用户输入用户卡
as
Begin
Declare @selectstring varchar(100) --声明模糊组合查询字串,留待where子句中利用
Set @selectstring=IsNull(' and tablea.mem_name Like ''%'+@mem_name+'%''','')+IsNull(' and tableb.mem_card like ''%'+@mem_card+'%''','')
Set @selectstring='select * from tablea inner join tableb on tablea.mem_id=tableb.mem_id where 1=1'+@selectstring
EXEC(@selectstring)
End
GO
btw:Set @selectstring=IsNull(' and tablea.mem_name Like ''%'+@mem_name+'%''','')+IsNull(' and tableb.mem_card like ''%'+@mem_card+'%''','')
对于这句,能组合成查询条件语句吗?
对于这句,能组合成查询条件语句吗?可以的,你试试看。