Faire correspondre une string à une colonne pleine d'expressions régulières

J'ai une colonne dans une table qui est pleine d'expressions régulières.

J'ai une string dans mon code, et je veux savoir quelles expressions régulières dans cette colonne correspondraient à cette string et returnneraient ces lignes.

En plus de tirer sur chaque ligne et de faire correspondre l'expression régulière (ce qui est coûteux, en vérifiant potentiellement des milliers d'loggings pour un seul chargement de page) est-il possible de le faire en SQL avec une (ou deux) requêtes?

Exemple d'input: W12ABC

Exemple de données de colonne

1 ^[W11][\w]+$ 2 ^[W12][\w]+$ 3 ^[W13][\w]+$ 4 ^[W1][\w]+[A][\w]+$ 5 ^[W1][\w]+[B][\w]+$ 6 ^[W1][\w]+[C][\w]+$ 

Devrait returnner les lignes 2 et 4.

Si vous êtes ouvert aux caractères generics, vous pouvez stocker des templates qui fonctionnent pour la syntaxe LIKE: "W12%" ou "W% ABC". Votre requête ressemblerait à ceci:

SELECT * FROM Table où Colonne LIKE 'W12ABC'

T-SQL ne fournit pas cette fonctionnalité, mais vous pouvez l'activer dans SQL Server en écrivant une fonction CLR à l'aide des classs d'expressions régulières .NET. Il y a un bon article expliquant comment le faire.