我正在尝试获取在sql server中的查询中具有特定字符组合的代码。
而不是在SQL Server 中说
and TIL.code LIKE '%tf%' or code like 'fs%' or code like '%ls%'
有没有一种模式我可以使用
如果您的目标是避免OR
,而不是使用Regex(SQL Server不支持(,则可以使用EXISTS
:
AND EXISTS (SELECT 1
FROM (VALUES('%tf'),('fs%'),('%ls%'))V(Pattern)
WHERE TIL.Code LIKE V.Pattern)
如果这来自一个参数,那么您将使用一个表类型参数,然后用该参数替换VALUES
表结构:
AND EXISTS (SELECT 1
FROM @YourTableTypeParameter TTP
WHERE TIL.Code LIKE TTP.YourPatternColumn)