如何使用一个变量搜索多个列

时间:2012-06-13 03:24:41

标签: sql sql-server

我想使用1个变量搜索一个表和多个列。我的代码如下所示:

SELECT        lCustomerID, sLastName, sFirstName, sAddress1, sAddress2, 
  sCity, sState, sZipcode , @search AS Expr1
FROM            Customers
WHERE (sLastName = N'Includes @search') 
OR    (sFirstName = N'includes @search') 
AND   (sBarcode = N'includes @search')

我希望它包含字符串not =

1 个答案:

答案 0 :(得分:0)

假设您打算拥有所有OR,并且“我希望它包含字符串”意味着您想要部分匹配(例如搜索“John”产生“Johnson”和“RoJohn”),您正在寻找LIKE关键字:

WHERE sLastName  LIKE N'%' + @search + '%'
   OR sFirstName LIKE N'%' + @search + '%'
   OR sBarCode   LIKE N'%' + @search + '%';