하나의 쿼리에서 두 개의 관련 테이블에서 데이터를 가져 오려고합니다. 표는 다음과 같다 :두 개의 관련 테이블에서 데이터를 가져 오는 방법은 무엇입니까?
표 1 :
--------------------------
| ID | username |
--------------------------
| 1 | user1 |
| 2 | user2 |
| 3 | user3 |
| 4 | user4 |
--------------------------
표 2 :
내가 표 2에서 표 1 및 키 - 값 쌍의 모든 행을 포함하여 결과를 얻고 싶은----------------------------------------------------
| ID | user_id | key | value |
----------------------------------------------------
| 1 | 1 | key1 | value1 |
| 2 | 1 | key2 | value2 |
| 3 | 2 | key2 | value3 |
| 4 | 3 | key3 | value4 |
| 5 | 4 | key1 | value5 |
| 6 | 4 | key3 | value5 |
----------------------------------------------------
여기서 key = key1. 키가 표 1의 주어진 행에 대해 표 1에 없으면 NULL로 채우십시오. 예상 결과의 예 : 또는
----------------------------------------------------
| user_id | username | key | value |
----------------------------------------------------
| 1 | user1 | key1 | value1 |
| 2 | user2 | NULL | NULL |
| 3 | user3 | NULL | NULL |
| 4 | user4 | key1 | value5 |
----------------------------------------------------
- 나는 2 개 테이블에서 SELECT
에서 표준 SELECT
을 시도 표 키 = 키 1 2.
를 키 - 값 쌍을 포함하지 않는 표 1에서 모든 행 표 1에서 표 2의 JOIN
으로 표시되었지만 표 2의 key = key1과 키 - 값 쌍이 포함 된 표 1의 모든 행이 표시됩니다. 이는 정확히 원하는 것과 반대입니다.
제안 사항? 하지 않아도 모든 것을 얻을 당신의 "얼터너티브"
, AND : O 표 2에서 3 USER_ID, 다음 쿼리 (위) 생성합니다 '티). 내 대답을 보니 ... – DRapp
오, 알았어. 감사. –