나는 매우 어리 석다. 나는 문제가있어서 그것을 알아낼 수 없다. 2 열간단한 mysql 질의를 출력 할 수 없다.
아주 간단한 MySQL의 테이블 :
ID1 | ID2
1 | 1
1 | 2
2 | 1
조건을 설명하는 방법을 아주 잘 알고하지 마십시오 :이 값을 1로 연결을 가지고 있기 때문에 내가 열 ID1에서 1의 값을 선택합니다 ID2에서 2.
IN과 다소 반대입니다.
내가 만든 경우 SELECT ID1 FROM X WHERE ID2 IN (1,2)
나는 동창이기 때문에 1과 2를 모두받습니다. 교차로가 필요합니다. SELECT ID1 FROM X WHERE ID2 IN BOTH 1 AND 2
과 같습니다.
그룹화와 관련이 있다는 것이 확실합니다.
한 솔루션은
SELECT * FROM
(SELECT ID1, GROUP_COCAT(ID2) y
FROM X
GROUP BY ID1)t
WHERE t.y = '1,2'
을 확인하는 것입니다하지만 난 순서 (1,2 또는 2,1) 모르는 내가 이상의 값을 가질 수 있기 때문에이 확인이 아닙니다.
바라건대 이것은 충분히 명확하다. 나는 매우 피곤하다.
ID2는 1, 2 포함? – Sadikhasan
이것은 단지 작은 예일 뿐더러 더 많은 값을 포함합니다. 예를 들어 1,2,3,4를 포함 할 수 있으며 1,2를 검색하면 좋은 결과를 얻고 싶습니다. – Cosmin
이 질문을 더 모호하게 만들 수 있습니까? 그건 그렇고, 당신이 다음과 같은 것을 찾고 있다고 생각합니다. SELECT a. * 어디서 왔는가 a.y IN (1,2) GROUP BY a.x HAVING COUNT (*) = 2; – Strawberry