mysql 去重问题
1. 运行环境#
mysql 5.6
1). 当前使用的 Laravel 版本?#
2). 当前使用的 php/php-fpm 版本?#
PHP 版本:
php-fpm 版本:
3). 当前系统#
4). 业务环境#
5). 相关软件版本#
2. 问题描述?#
话不多收,直接上图:
我使用 where 条件查出来这些数据,想在这个数据或者 sql 基础上去掉重复的数据,规则就是:如果 p_id 数值为 0 的话,就正常展示,如果不是 0 的话,就只保留一条数据。
因为去重之后还要分页
//: <> (代码问题的话,请提供一份最短的,可复现问题的代码。或者相关代码)
3. 您期望得到的结果?#
例如上面的数据,有很多为 0 的数据,都需要保留,p_id = chap_2HFoHbf7Q6HF75eeEzYdECjRVPA 的数据有两条,那就只保留一条。
//: <> (能截图就截图。)
4. 您实际得到的结果?#
采用了 DISTINCT 和 GROUP BY 都会对 0 也进行去重或者分组,不符合预期结果。由于数据过多,为了性能问题,不建议使用 JOIN 或者 UNION 函数。
请求各位大佬帮助
//: <> (有报错信息的话把堆栈信息提供出来)
推荐文章: