SQL连接两个表删除重复项

时间:2017-12-02 02:33:26

标签: sql oracle

好的,我一直在搜索所有之前提出的问题,但我仍然遇到问题。

我有两张桌子

表格MOVIES

mov_id
mov_name
actor_id

表ACTOR

actor_id_2
actor_name

我想将两个表连接到一个列出

的表中
  1. mov_id
  2. mov_name
  3. ACTOR_NAME
  4. 我尝试使用JOIN WHERE actor_id = actor_id_2,但我的代码包含重复相同的actor_name 3次的重复项。

    Example

    我尝试了多种方法,每种方式都不成功。我不确定哪种方式可以做到这一点。

2 个答案:

答案 0 :(得分:3)

您可以使用内连接来连接表,以便选择两个表中具有匹配值的记录,将您的查询写为

select distinct t1.mov_id, t1.mov_name, t2.actor_name from MOVIES t1 inner join ACTOR t2 on t1.actor_id=t2.actor_id_2;

答案 1 :(得分:1)

我会尝试建立你的概念。

您使用的是使用主键和外键的关系数据库。

如果您有上述情况,您需要从多个表中检索数据并且它们相关,则使用joins

联接有很多种,您可以在tutorial

中获取详细信息和指导

现在来到你的桌子和数据。

Select M.mov_id, M.mov_name, M.actor_name from Movies M
inner join Actor A on M.actor_id = A.actor_id_2 

注意:在on关键字之后,您可以为联接设置多个条件,以根据您的要求获取最具体的数据。