HI에서 서로 다른 두 가지 값을 보여, 난 1- 이름, ID 코드 2- ID, 값, 개념가 동일한 필드
하나의 이름 두 개념 및 두 개의 값을 가질 수있는 두 테이블을 가지고있다. 나는 이것을 찾아보고 싶다 : 아이디, 이름, 값 1, 값 2.
어떻게 할 수 있습니까?
탱크
HI에서 서로 다른 두 가지 값을 보여, 난 1- 이름, ID 코드 2- ID, 값, 개념가 동일한 필드
하나의 이름 두 개념 및 두 개의 값을 가질 수있는 두 테이블을 가지고있다. 나는 이것을 찾아보고 싶다 : 아이디, 이름, 값 1, 값 2.
어떻게 할 수 있습니까?
탱크
당신은 예를
SELECT t.id, t.name, t.value as value1, t2.value as value2
FROM table2 as t
INNER JOIN table2 as t2 ON t.id = t2.id AND t.value <> t2.value
을 위해 할 수 있지만, 가능한 많은 다른 방법이있다.
편집
SELECT t1.id, t1.name, t2a.value as value1, t2b.value as value2
FROM table1 as t
INNER JOIN table2 as t2a ON t.id = t2a.id
INNER JOIN table2 as t2b ON t.id = tba.id AND t2b.value <> t2a.value
참고 : 솔루션이 시작됩니다
(당신이 결과에 ID 당 여러 행을 얻을 것이다 3 행의 경우) 아이디 당 2 개 행이 있다고 가정합니다 :
SELECT
T.id,
T.name,
V1.value AS value1,
V2.value AS value2
FROM
My_Table T
LEFT OUTER JOIN My_Values V1 ON V1.id = T.id
LEFT OUTER JOIN My_Values V2 ON V1.id = T.id
그러나 여기서 질문 1은 값 1과 값 2를 어떻게 구별합니까? 그것은 "개념"의 가치인가? 그것은 문제가 DB에 먼저 추가 되었는가? 어떤 다른 열에 더 높은 ID 열이 있습니까? 귀하의 요구 사항이 완전히 설명되어 있지 않습니다.
테이블 1과 테이블 2를 연결하는 데 사용되는 필드는 무엇입니까? 아니면 이드가 공통 키입니까? –
이 질문을 명확히하십시오. 두 테이블에서 JOIN 연산을 수행하고 id로 결합하고자하는 것 같습니다. – Alex