Sql server 2008 如何使它正确SQL Server查询

Sql server 2008 如何使它正确SQL Server查询,sql-server-2008,Sql Server 2008,我在数据库中有一个名为Emplyee的表,其中包含以下列: Categ - int WorkPlace - int WorkPlace1 - int EducationalLevel - varchar(100) System - varchar(100) Type - varchar(100) ApData - varchar(100) 我正在做一个搜索表单,我不知道如何做这个复杂的查询 首先,类别是主要类别,工作场所是子类别,工作场所1是工作场所的子类别 我想选择与Categ和WorkPl

我在数据库中有一个名为Emplyee的表,其中包含以下列:

Categ - int
WorkPlace - int
WorkPlace1 - int
EducationalLevel - varchar(100)
System - varchar(100)
Type - varchar(100)
ApData - varchar(100)
我正在做一个搜索表单,我不知道如何做这个复杂的查询

首先,类别是主要类别,工作场所是子类别,工作场所1是工作场所的子类别

我想选择与Categ和WorkPlace以及WorkPlace1匹配的所有行,并在其他列中搜索字符串

换句话说,当类别列中有匹配项时,我想在这些列中搜索EducationNallLevel、System、Type、ApData

我怎么能做到


提前感谢。

这里有一种方法(假设您为所有以@开头的项目定义变量):

declare @search varchar(100)
set @search = '%FIND_ME%'

select *
from Emplyee 
where Categ = @Categ and WorkPlace = @WorkPlace and WorkPlace1 = @WorkPlace1 and
(
   EducationalLevel like @search OR
   System like @search OR
   Type like @search OR
   ApData like @search
)