我创建了一个视图,它从多个表中获取所有数据,我需要对其进行关键字搜索。下面是我的 SP,我在其中加入了我的视图和关键字功能,它对描述、名称、项目、产品进行搜索。我的这里的问题是,如果项目具有空值或产品具有空值,它不会返回行。即使项目或产品为空,我也需要显示结果。我尝试使用左外连接,它显示所有与我无关的行搜索关键字。我尝试了不同的方法,例如使用 where 子句 items 为 null 和 products 为 null,没有运气。我需要一些专家建议来处理这个问题。
ALTER PROCEDURE [dbo].[keywordsearch]
(
@username varchar(256),
@keyword varchar(250)
)
AS
BEGIN
select * from allrecordsview k join dbo.Split(@Keyword, ',')T on
k.description+k.Name+k.items +k.products like '%' + T.items + '%'
where k.username = @username
END