gpt4 book ai didi

mysql - 避免Mysql左连接查询中的重复

转载 作者:行者123 更新时间:2023-11-29 19:01:16 25 4
gpt4 key购买 nike

我必须从三个表(如用户详细信息、任务、时间详细信息)中获取数据,因此我正在获取数据,但它是基于时间详细信息表进行复制的。例如,人员 ID 是 - 1。它在 timedetails 表中出现两次,然后我得到重复的行。我的查询是

SELECT  GROUP_CONCAT(B.task_status) as task_status,
GROUP_CONCAT(B.task_type) as task_type,
GROUP_CONCAT(B.task_id) as task_id,
GROUP_CONCAT(B.task_name) as task_name,
A.us_id,
A.us_name,
C.out_time
FROM ts_userdetails A
LEFT JOIN
cms_task B
ON B.emp_id = A.us_id
LEFT JOIN
ts_timedetails C
ON C.user_id=A.us_id
WHERE C.entry_date='2017-05-09' AND
A.us_id!='1'
GROUP BY C.user_id

我得到的结果如下 enter image description here

我不想在显示的字段中出现重复的内容。

如果我有一个特定人员 ID 的 2 个时间详细信息,则意味着发生了 2 次重复。我只想要一次。

最佳答案

使用独特关键字

    SELECT GROUP_CONCAT(distinct B.task_status) as task_status,GROUP_CONCAT(distinct B.task_type) as task_type,GROUP_CONCAT(distinct B.task_id) as task_id,GROUP_CONCAT(distinct B.task_name) as task_name,A.us_id,A.us_name,C.out_time FROM ts_userdetails A LEFT JOIN cms_task B ON B.emp_id = A.us_id LEFT JOIN ts_timedetails C ON C.user_id=A.us_id WHERE C.entry_date='2017-05-09' AND A.us_id!='1' GROUP BY C.user_id

关于mysql - 避免Mysql左连接查询中的重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43863973/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com