2017-06-13 71 views
-1

这里快速问题。我正在尝试从3个不同的表中选择peron_name和person_profession以及person member_role。 眼下,这是工作:SQL-2在一个声明中加入

SELECT a.per_FirstName AS Nome 
    , pc.c1 as Profissao 
    , a.per_cls_ID as Membro 
FROM person_per AS a 
LEFT JOIN person_custom pc ON a.per_id = pc.per_ID 
ORDER BY pc.c1 
    , a.per_FirstName 

但它给我的member_role作为member_code ID。我有另一个名为list_lst的表,它将per_cls_ID与特定角色相关联。我如何参考它?

现在,我的查询打印:

JohnDoe  Doctor 2 
MaryJane Teacher 1 

我希望它打印:

JohnDoe Doctor Member 
MaryJane Teacher Visitor 

有人可以帮我吗?

+1

你会与另一个做加盟。 http://blog.codinghorror.com/a-visual-explanation-of-sql-joins/你也应该决定你使用哪个DBMS作为mysql与sql server不是一回事。 –

+1

它如何能够加入person_custom表,但无法加入list_lst表?这张桌子有什么不同,你不能像第一张那样加入它? –

回答

1

它是这样的:

SELECT 
    a.per_FirstName AS Nome, 
    pc.c1 as Profissao, 
    l.COLUMNNAMEHERE as Membro 
FROM person_per AS a 
LEFT JOIN person_custom pc ON a.per_id = pc.per_ID 
LEFT JOIN list_lst l on l.per_cls_ID = a.per_cls_ID 
ORDER BY pc.c1, a.per_FirstName 
+0

谢谢!这工作 – yurividal