복붙노트

[SQL] SQL Server에 대한 "LIKE"와 "IN"을 결합 [중복]

SQL

SQL Server에 대한 "LIKE"와 "IN"을 결합 [중복]

그것은 SQL 서버 쿼리에서 LIKE 및 IN을 결합 할 수 있습니까?

그래서,이 쿼리

SELECT * FROM table WHERE column LIKE IN ('Text%', 'Link%', 'Hello%', '%World%')

이 가능한 일치 어느 찾습니다 :

Text, Textasd, Text hello, Link2, Linkomg, HelloWorld, ThatWorldBusiness

기타...

해결법

  1. ==============================

    1.효과적으로 IN 문은 그래서 ... 또는 일련의 문장을 생성

    효과적으로 IN 문은 그래서 ... 또는 일련의 문장을 생성

    SELECT * FROM table WHERE column IN (1, 2, 3)
    

    효과적으로인가

    SELECT * FROM table WHERE column = 1 OR column = 2 OR column = 3
    

    그리고 슬프게도, 경로가 당신은 당신의 LIKE 문에 걸릴해야합니다

    SELECT * FROM table
    WHERE column LIKE 'Text%' OR column LIKE 'Hello%' OR column LIKE 'That%'
    
  2. ==============================

    2.나는 이것이 오래 알고 있지만 나는 작업 솔루션의 종류를 가지고

    나는 이것이 오래 알고 있지만 나는 작업 솔루션의 종류를 가지고

    SELECT Tbla.* FROM Tbla
    INNER JOIN Tblb ON
    Tblb.col1 Like '%'+Tbla.Col2+'%'
    

    당신은 당신의 where 절 등을 더욱를 확장 할 수 있습니다 이것이 내가 찾던 때문에 나는 단지이 답변과 나는 그 일을하는 방법을 알아 내려고했다.

  3. ==============================

    3.또 다른 옵션은이 같은 것을 사용하는 것

    또 다른 옵션은이 같은 것을 사용하는 것

    SELECT  * 
    FROM    table t INNER JOIN
            (
                SELECT  'Text%' Col
                UNION SELECT 'Link%'
                UNION SELECT 'Hello%'
                UNION SELECT '%World%'
            ) List ON t.COLUMN LIKE List.Col
    
  4. ==============================

    4.아니, 당신은 사용 또는 당신의 LIKE 문을 결합 할 수있을 것이다 :

    아니, 당신은 사용 또는 당신의 LIKE 문을 결합 할 수있을 것이다 :

    SELECT 
       * 
    FROM 
       table
    WHERE 
       column LIKE 'Text%' OR 
       column LIKE 'Link%' OR 
       column LIKE 'Hello%' OR
       column LIKE '%World%'
    

    당신은 전체 텍스트 검색 봤어?

  5. ==============================

    5.당신은 OR로 연결된 여러 LIKE 절을해야합니다.

    당신은 OR로 연결된 여러 LIKE 절을해야합니다.

    SELECT * FROM table WHERE 
    column LIKE 'Text%' OR 
    column LIKE 'Link%' OR 
    column LIKE 'Hello%' OR 
    column LIKE '%World%' OR 
    
  6. ==============================

    6.아니, MSSQL은 쿼리를 허용하지 않습니다. 당신은 COL LIKE '...'또는 COL LIKE '...'등을 사용한다

    아니, MSSQL은 쿼리를 허용하지 않습니다. 당신은 COL LIKE '...'또는 COL LIKE '...'등을 사용한다

  7. from https://stackoverflow.com/questions/1865353/combining-like-and-in-for-sql-server by cc-by-sa and MIT license