Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Usando RegEx no SQL Server


Você não precisa interagir com o código gerenciado, pois pode usar LIKE:
CREATE TABLE #Sample(Field varchar(50), Result varchar(50))
GO
INSERT INTO #Sample (Field, Result) VALUES ('ABC123 ', 'Do not match')
INSERT INTO #Sample (Field, Result) VALUES ('ABC123.', 'Do not match')
INSERT INTO #Sample (Field, Result) VALUES ('ABC123&', 'Match')
SELECT * FROM #Sample WHERE Field LIKE '%[^a-z0-9 .]%'
GO
DROP TABLE #Sample

Como sua expressão termina com + você pode usar '%[^a-z0-9 .][^a-z0-9 .]%'

EDITAR :
Para deixar claro:SQL Server não suporta expressões regulares sem código gerenciado. Dependendo da situação, o LIKE pode ser uma opção, mas não tem a flexibilidade que as expressões regulares oferecem.