2012-06-13 3 views
0

Je souhaite rechercher une table et plusieurs colonnes en utilisant une variable. Mon code ressemble à ceci:Comment rechercher plusieurs colonnes avec une variable

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') 

Je veux inclure la chaîne ne =

+0

Voulez-vous dire avoir/OR? Ou voulez-vous dire à la fois être OU? –

Répondre

0

En supposant que vous vouliez dire avoir tous les ORs, et que « je veux inclure la chaîne » signifie que vous voulez une partie match (par exemple une recherche de "John" donne "Johnson" et "RoJohn"), vous cherchez le mot-clé LIKE:

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