2012-08-25 4 views
0

table1 중 하나는 member_id입니다. 필드 table2 하나다른 테이블의 키를 기준으로 결과 정렬

member_username이며,이 테이블의 필드는 idtable2member_id 필드에서 동일하다.

목표는 table1의 모든 결과를 을 기준으로 알파벳순으로 오름차순으로 표시하는 것입니다. table2.

기본적으로 member_idtable1에서 으로 해결하고 사전 순으로 정렬해야합니다.

아이디어가 있으십니까?

답변

2

table1에서 table2까지 가입을 사용하여 사용자 이름을 선택하고이 필드를 정렬해야합니다. 일대 다 관계에주의를 기울일 필요가 있습니다. 즉, 구성원이 동일한 ID를 가진 table2에 둘 이상의 항목을 가질 수있는 경우 예상보다 많은 행을 얻을 수 있습니다.

select * 
from table1 
left join table2 on table2.id = table1.member_id 
order by table2.member_username 
0

질문을 오해하지 않았다면 두 테이블을 합치고 member_username별로 정렬 해보십시오.

SELECT t1.*, 
     t2.member_username 
FROM table1 AS t1 
INNER JOIN table2 AS t2 ON t1.member_id = t2.id 
ORDER BY t2.member_username ASC; 

당신은 쿼리의 SELECT part의에서 t2.member_username을 남길 수 있습니다, 난 그냥 참조 거기에 넣어.

관련 문제