做了 distinct () 去重,数据还是有重复的

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 4

select A, B, C ...distinct(A) , distinct 并不是只对字段A去重,而是对所有的 select 字段去重比较,除非 所有的字段都相同,distinct 才会去重掉这一条记录,distinct 可以理解为 行 与 行 之间的去重,只有某几行的所有字段都一样,才会去重;
你的例子里面只是行中的某个字段一样,并不代表行是一样的,也就是说 distinct 不仅仅只是比较你写的那个A字段相同,而是比较所有查询的字段是否相同(行与行是否相同(数据库的行可以理解为代码中的模型对象,只有行相同)才会去重。

5年前 评论

也就是你的结果不止 上下两行 的 李万翠 要相同,还要前面的那个 ID 也相同才会去重

5年前 评论

@HI 的确是这样的,你的回答让人更加深刻的记住。今天早上做懵了,没有理解客户的需求,有数据中有多条,但是只有 1 个字段不相同,需要的是去除重复的数据再将同一个 id 数据不相同的行进行合并,现在我在用 group_concat() 来合并数据,不过没有成功,请问你有什么见解?

5年前 评论
yykpf

你可以试一下这样:
file
对 id 进行分组,然后在分组中对数据进行去重

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!