我不想在我的结果中重复行

时间:2016-03-18 08:35:13

标签: mysql

我有两个table.in那个表我每个都有t6wo列。如果两个列和它们的值在表中都相同那么如何在这些表之间进行内部连接。 我的emp_code是另一个表中的主键,表名是employee。 这个emp_code是actual_alldetails表和emp_time_tracking表中的外键。 actual_alldetails表: -

emp_code, date_id, card_id, wo, activity_id, quty, wastage, mcusage, actual_wastage
18, 151, 34, , 64, 275, 0, , 0
10, 152, 37, , 65, 19, 0, 3, 0
7, 152, 72, , 65, 4200, 4, , 0

emp_time_tracking表: -

emp_code, date_id, in_time, out_time
18, 151, 09:00:00, 18:00:00.0000
10, 152, 09:00:00, 18:00:00.0000
7, 152, 09:00:00, 18:00:00.0000

这里emp_code和date_id相同,它们的值也相同。但是当我试图像

那样执行我的查询时
select t.emp_code,t.date_id,t.in_time,t.out_time,a.card_id, a.wo, a.activity_id, a.quty, a.wastage, a.mcusage, a.actual_wastage from actual_alldetails a inner join emp_time_tracking t on t.emp_code=a.emp_code;

它将从emp_time_tracking和actual_alldetails重新启动所有行。

请帮助我解决我的问题。我不想要来自emp_time_tracking的重复值。我的意思是emp_code和date_id行不应重复多次。 请帮我解决这个问题。

3 个答案:

答案 0 :(得分:0)

将其添加到查询的末尾

RACCommand

答案 1 :(得分:0)

而不是内连接尝试使用" OUTER JOIN"并添加" GROUP BY"

答案 2 :(得分:0)

尝试以下查询 -

SELECT t.emp_code,t.date_id,t.in_time,t.out_time,a.card_id, a.wo, a.activity_id, a.quty, a.wastage, a.mcusage, a.actual_wastage 
FROM actual_alldetails a 
INNER JOIN emp_time_tracking t ON t.emp_code=a.emp_code
GROUP BY t.emp_code,t.date_id;