MySQL JOIN表查询

时间:2010-09-15 18:15:30

标签: mysql join syntax

我讨厌要求代码,但我似乎无法执行以下操作 -

员工

   | lastname  - name    - position |
   | Henderson | John    |  A       |
   | Howard    | Bob     |  B       |
   | Hendry    | Chris   |  B       |

Max_person

   | lastname  - change  |
   | Henderson | 0.9     |
   | Howard    | 0.2     |
   | Hendry    | 0.3     |

我一直在尝试加入这两个表 - 在max_person的末尾添加“POSITION”列的工作人员。

这里使用的查询是什么?

PS。对于我之前的问题感到抱歉 - 我的表格错了,现在完全失去了

1 个答案:

答案 0 :(得分:4)

使用:

   SELECT mp.lastname,
          mp.change,
          s.position
     FROM MAX_PERSON mp
LEFT JOIN STAFF s ON s.lastname = mp.lastname

如果两个表之间没有匹配的lastname值,则位置值将为NULL。如果您只想查看匹配的记录,请将“LEFT JOIN”更改为“JOIN”。

更好地设计表格

加入姓氏是有风险的,因为多个人可以使用相同的姓氏。名字也可以复制,但代表不同的人......