2016-12-22 6 views
0

ID에서 아래에 주어진대로 Id가 있어야하는 데이터를 가져오고 싶습니다. 대신에 또는 적용하고 연산자를 사용하여 ID IN (5 AND 4 AND 3)이라고 말합니다.Andy 연산자를 사용하여 Mysql Select Id

SELECT * FROM table WHERE id IN (5,4,3,1,6) 

이렇게 데이터를 가져올 수 있습니까?

내가 필요 운영자하지 않거나 왜 그 16과 17 모두에 존재

SELECT PM.ContentID, PM.Author, PM.Title, PM.Journal, PM.Year, PM.Category, PM.StudyLocation, PM.FileURL from PublishedContentMaster PM join TopicContentMapping T ON T.ContentID=PM.ContentID where PM.ContentID='100' AND T.TopicID IN (16,7) 

그래서 내가 원하는 샘플 쿼리를합니다.

+0

샘플 데이터와 원하는 결과를 보여주십시오. –

+0

ID는 동시에 5,4,3,1,6 값을 가질 수 있습니까? 주어진 인스턴스에서 ID는 모든 값이 아닌 하나의 값을 가질 수 있습니다. 귀하의 질문은 명확하지 않습니다. 친절하게 다시 말하십시오. –

+0

@MoishKamble 필터를 사용하고 있으므로 주제 1을 선택하면 ID 1에서 검색하고 2 개 이상을 선택하면 그 반대가됩니다. –

답변

1

집계 쿼리와 having 절이 필요하다고 생각됩니다. 그것은 일반적으로 다음과 같이 보일 것입니다 :

이 경우
select x 
from t 
where id in (5, 4, 3, 1, 6) 
group by x 
having count(*) = 5; 

, x는 다섯 개 값을 다섯 개 행을 할 열 것입니다.

+0

에서 내 업데이트를 확인하십시오 –