2016-10-03 2 views
1

|costume|party으로 식별되는 필드에 내용이 있습니다.부분 문자열 값을 기반으로 MYSQL 쿼리 결과 제한

결과를 식별자 중 하나 또는 다른 식별자를 포함하는 데이터 세트로만 제한 할 수 있습니까?

나는
SELECT * FROM ezpages_content WHERE LIKE "|party" NOT IN pages_title 

을 시도했지만 그건 그냥 구문 오류가 있습니다. 원하는 결과는 |costume 인 모든 데이터를 반환했을 것입니다.

필드의 항목 일부를 확인할 수 있는지 확실하지 않습니다.

답변

2

귀하의 요구 사항에 대해 확실하지만 NOT LIKE

SELECT * FROM ezpages_content WHERE pages_title NOT LIKE "%|party%" 
+1

감사합니다. @JaydipJ. 그 일을 :) –

1

찾고 있습니다하지 난 당신이 필드에있는 항목의 일부를 확인할 수있는 경우도 확실하지 않다.

당신은 LIKE 또는 NOT LIKE과 결합 % 와일드 카드 연산자를 사용 할 수 있습니다.

다음은 올바른 구문의 두 가지 예입니다. 어느 하나를 사용하면 예상 된 결과에 따라 달라집니다

구문 # 1 : SELECT * FROM ezpages_content WHERE pages_title LIKE "%|costume%"

구문 # 2 : SELECT * FROM ezpages_content WHERE pages_title NOT LIKE "%|party%".

첫 번째 쿼리는 |party 또는 다른 식별자가 있는지 여부와 관계없이 |costume이 페이지 제목에있는 결과를 반환합니다. 두 번째 쿼리는 페이지 제목에 |party이 포함되지 않은 결과를 반환합니다.

0

사례 사용을하지 않고도이 작업을 수행 할 수있는 수많은 방법이 있습니다. 가장 쉽고 가능성이 가장 좋은 성능은 단순히 당신이 찾고있는 무엇

WHERE pages_title <> '|party' 
1

는 MySQL의에서 NOT LIKE 연산자입니다 것입니다. 에 사용 된 경우 LIKE 연산자가 뒤에 오는 기준과 일치하는 행을 제외시킵니다.

SELECT * FROM ezpages_content WHERE pages_title NOT LIKE "%|party%" 

을 포함하는 행을 제외하려면 |

그래서 쿼리 (IT 파티 텍스트 을 포함하는 행을 제외하려면) | 다음과 같이 보일 수도 거기에 의상 텍스트를 쿼리는 같을 것 이

SELECT * FROM ezpages_content WHERE pages_title NOT LIKE "%|costume%"