DISTINCT-mysql查询多次返回相同字段

DISTINCT-mysql查询多次返回相同字段,mysql,Mysql,我有一个查询,其中我进行了一次连接以获取两个表的信息,我所需要做的只是唯一的tt\u code 我的SQL SELECT cd.`tt_code`, ri.`complain_code`, ri.`repair_time` FROM `complain_details`cd JOIN `repair_info` ri ON `cd`.`complain_code` =`ri`.`complain_code` WHERE `cd`.`stat` = 'n' AND `ri`.`stat`

我有一个查询,其中我进行了一次连接以获取两个表的信息,我所需要做的只是唯一的
tt\u code

我的SQL

SELECT cd.`tt_code`, ri.`complain_code`, ri.`repair_time`    
FROM `complain_details`cd
JOIN `repair_info` ri ON `cd`.`complain_code` =`ri`.`complain_code`
WHERE `cd`.`stat` = 'n' AND `ri`.`stat` = 'n'
AND (`cd`.`ass_to_per` = 'murad.hasan' OR `ri`.`ass_to_per` = 'murad.hasan')
我的当前输出


Desire输出是唯一的
tt\u code
行,仅使用SQL。我知道
DISTINCT
,但我无法实现它。

您可以使用
分组方式

SELECT cd.`tt_code`, ri.`complain_code`, ri.`repair_time`    
FROM `complain_details`cd
JOIN `repair_info` ri ON `cd`.`complain_code` =`ri`.`complain_code`
WHERE `cd`.`stat` = 'n' AND `ri`.`stat` = 'n'
AND (`cd`.`ass_to_per` = 'murad.hasan' OR `ri`.`ass_to_per` = 'murad.hasan')
GROUP BY cd.`tt_code`;

在选定的所有列中都可以使用不同的功能。所以这些都是唯一的行。在我们为您提供帮助之前,您必须回答的是应该为tt_code=161559选择哪一行?我得到了答案,我使用GROUP BY
投诉详细信息。tt_code
,它完成了任务。GROUP BY x将返回y和z的任意值。这不太可能是你想要的谢谢,但我已经这么做了,我对我的问题有一点意见。@FrayneKonok哦,对你有好处。我没有看到你的评论。(Y) 使用GROUP BY是不正确的,因为您没有对行使用任何聚合函数(如COUNT、AVG等)。它将为每个组返回任意一行。