Program Tip

VARCHAR 변수에 하위 문자열이 포함되어 있는지 어떻게 알 수 있습니까?

programtip 2020. 12. 11. 19:19
반응형

VARCHAR 변수에 하위 문자열이 포함되어 있는지 어떻게 알 수 있습니까?


나는 그것이이라고 생각 CONTAINS했지만 그것은 나를 위해 작동하지 않습니다.

나는 이것을 찾고 있어요 :

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

select변수에 문자열이 포함되어 있는지 여부에 따라 하나 또는 다른 변수 를 실행해야하며 작동 하도록하는 방법을 알 수 없습니다. 내가보고있는 모든 예제는 포함의 열을 사용하고 있습니다.

미리 감사드립니다.


표준 SQL 방식은 다음과 같이 사용하는 것입니다.

where @stringVar like '%thisstring%'

그것은 쿼리 문에 있습니다. TSQL에서도이 작업을 수행 할 수 있습니다.

if @stringVar like '%thisstring%'

대신에 LIKE(다른 댓글이 제안으로 작업을 수행하는) 당신은 선택적으로 사용할 수 있습니다 CHARINDEX:

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

CONTAINS 전체 텍스트 인덱스 필드 용입니다. 그렇지 않은 경우 다음을 사용하십시오. 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.

참고 URL : https://stackoverflow.com/questions/12265411/how-can-i-tell-if-a-varchar-variable-contains-a-substring

반응형