22,181
社区成员




select a1,a2,b1
from A
left outer join B
on A.a3 = B.b3
where ( b1 like '%' + isnull(@p,'') + '%' ) or (b1 is null and isnull(@p,'') ='')
select a1,a2,b1
from A
left outer join B
on A.a3 = B.b3
where b1 like '%' + @p + '%' or isnull(@p,'')=''
declare @p varchar(2000)
set @p=isnull(@p,'')
select a1,a2,b1
from A
left join B
on A.a3 = B.b3
where b1 like '%' + @p + '%'
create proc my_prce @p as varchar(10)
as
begin
declare @sql as varchar(100)
if @p is null
set @sql = select a1,a2,b1 from A left outer join B on A.a3 = B.b3'
else
set @sql = select a1,a2,b1 from A left outer join B on A.a3 = B.b3 and where b1 like '%''' + @p + '''%''
exec(@sql)
end
go