Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 组_concat中的重复结果_Mysql - Fatal编程技术网

Mysql 组_concat中的重复结果

Mysql 组_concat中的重复结果,mysql,Mysql,我的数据库(3,15,6,4,15)中有这些数据,我试图使用group concat在表中显示这些数据,问题是我得到了重复的结果。(3,15,6,4,15,3,15,6,4,15,3,15,6,4,15) 我试图使用distinct,但它也消除了其他“15” 最好的解决方案是什么? 谢谢 这是我的问题 SELECT users.*, GROUP_CONCAT(written.score separator ' - ') as Wscore, student_subject.*,SUM(writt

我的数据库(3,15,6,4,15)中有这些数据,我试图使用group concat在表中显示这些数据,问题是我得到了重复的结果。(3,15,6,4,15,3,15,6,4,15,3,15,6,4,15)

我试图使用distinct,但它也消除了其他“15”

最好的解决方案是什么? 谢谢

这是我的问题

SELECT users.*, GROUP_CONCAT(written.score separator ' - ') as Wscore, student_subject.*,SUM(written.score) as total, SUM(written.item) as item FROM users JOIN written ON users.idnumber=written.idnumber JOIN student_subject ON users.idnumber=student_subject.idnumber WHERE student_subject.teacher='$login_session' AND written.section='$section' AND written.level='$level' AND written.year='$year' AND written.subject='$subject' AND users.gender='male' AND written.period='first' GROUP BY users.idnumber order by users.lname

您可能只想在
组中使用
独特的
。\u concat()


请注意,表别名如何使查询更易于编写和读取。

实际上,我尝试在组concat中使用distinct,但其他15个则没有shown@misdirection . . . 如果要消除重复项,为什么希望15出现两次?因为它在我的数据库中(3,15,6,4,15)
SELECT u.*, GROUP_CONCAT(distinct w.score separator ' - ') as Wscore, 
       ss.*, SUM(w.score) as total, SUM(w.item) as item
FROM users u JOIN
     written w
     ON u.idnumber = w.idnumber JOIN
     student_subject ss
     ON u.idnumber = ss.idnumber
WHERE ss.teacher = '$login_session' AND w.section='$section' AND 
      w.level = '$level' AND w.year = '$year' AND w.subject = '$subject' AND 
      u.gender = 'male' AND w.period = 'first' 
GROUP BY u.idnumber
order by u.lname;