问题描述:
建立一个视图view_CollegeClassStudents,左连接了3张表 
当SELECT * FROM [StuInfManagement].[dbo].[view_CollegeClassStudents] 右表为空的行能显示
    比如说 化工学院 NULL NULL NULL当我想加上模糊查询时 比如说执行
select * from view_CollegeClassStudents where CollegeName like '%' and classname like '%' and StudentNumber like '%'时,右表为空的行就不显示了感觉问题出在 Classname like '%'中,好像把值为空的给过滤了但我既想实现select * from view_CollegeClassStudents where CollegeName like '%' and classname like '%' and StudentNumber like '%'的功能,又想右表为空的行也显示,请问怎么实现????

解决方案 »

  1.   

    select * from view_CollegeClassStudents 
    where CollegeName like '%' or CollegeName is null
      

  2.   

    collegeName like '%'+@a+'%' and (className like '%'+@a+'%' or className is null).....
      

  3.   

    select * from view_CollegeClassStudents where CollegeName like '%' and classname like '%' and StudentNumber like '%' or CollegeName is null or classname is null or StudentNumber is null