una - substring sql




Come posso sapere se una variabile VARCHAR contiene una sottostringa? (3)

Ho pensato che fosse CONTAINS , ma non funziona per me.

Sto cercando di fare questo:

IF CONTAINS(@stringVar, 'thisstring')
   ...

Devo eseguire una select o un'altra, a seconda che la variabile contenga una stringa e non riesco a capire come farlo funzionare. Tutti gli esempi che sto vedendo utilizzano le colonne nei contenuti.

Grazie in anticipo.


Il modo standard SQL deve essere utilizzato come:

where @stringVar like '%thisstring%'

Questo è in una dichiarazione di query. Puoi farlo anche in TSQL:

if @stringVar like '%thisstring%'

Invece di LIKE (che funziona come suggerito da altri commentatori), in alternativa puoi usare CHARINDEX :

declare @full varchar(100) = 'abcdefg'
declare @find varchar(100) = 'cde'
if (charindex(@find, @full) > 0)
    print 'exists'

    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.




sql-server-2012