Je pensais que c’était CONTAINS
, mais cela ne fonctionne pas pour moi.
Je cherche à faire ça:
IF CONTAINS(@ssortingngVar, 'thisssortingng') ...
Je dois exécuter une select
ou une autre, selon que cette variable contient une chaîne et que je ne parviens pas à comprendre comment la faire fonctionner. Tous les exemples que je vois utilisent des colonnes dans le conteneur.
Merci d’avance.
La manière standard de SQL est d’utiliser comme:
where @ssortingngVar like '%thisssortingng%'
C’est dans une instruction de requête. Vous pouvez aussi le faire dans TSQL:
if @ssortingngVar like '%thisssortingng%'
Au lieu de LIKE
(qui fonctionne comme le suggèrent les autres commentateurs), vous pouvez également utiliser CHARINDEX
:
declare @full varchar(100) = 'abcdefg' declare @find varchar(100) = 'cde' if (charindex(@find, @full) > 0) print 'exists'
CONTAINS
est pour un champ indexé en texte intégral – sinon, utilisez LIKE
IF CHARINDEX('TextToSearch',@TextWhereISearch, 0) > 0 => TEXT EXISTS IF PATINDEX('TextToSearch', @TextWhereISearch) > 0 => TEXT EXISTS Additionally we can also use LIKE but I usually don't use LIKE.