Wenn Sie multiple patterns
haben um zu suchen, ist es besser, eine derived table
zu erstellen oder temporary table
um die patterns
zu speichern
DECLARE @patterns TABLE (
pattern VARCHAR(20)
);
INSERT INTO @patterns VALUES ('%$%'), ('%[%]%'), ('%ac cd%');
SELECT a.* FROM table_name a JOIN @patterns p ON (a.Description LIKE p.pattern);
Wenn Sie mehrere Spalten zum Vergleichen haben, fügen Sie einfach einen Ausdruck in ON
hinzu Klausel
SELECT a.* FROM table_name a JOIN @patterns p ON (a.Description LIKE p.pattern)
OR (a.Column2 like p.pattern);
Aktualisiert:Ansicht verwenden
CREATE VIEW PatternSearch
AS
WITH Patterns (Patterns)
AS
(
Select '%Tool%'
union all
Select '%Sale%'
union all
Select '%ac cd%'
)
SELECT a.* FROM table_name a JOIN Patterns p ON (a.Description LIKE p.pattern)
GO
Nicht getestet, aber Sie können so vorgehen