首页 >

php查询mysql重复,MySQL数据库如何删除重复数据 – 数据库 – 前端,mysql 列转行 逗号分隔

mysql root用户,mysql 强制自增,mysql5.7 cnf没有,mysql+自增值+补空,mysql innodb ngram,mysql 列转行 逗号分隔安卓php集成环境,php怎样加装扩展,php来路判断,微信支付 php服务端,admin temp php,discuz avatar.php,棋牌网站php,php网页开发就业,php 微信随机红包算法php查询mysql重复,MySQL数据库如何删除重复数据 - 数据库 - 前端,mysql 列转行 逗号分隔数据准备

示例表 Student_Information 如下 :

大家插入一部分数据到该表,其中存在多条姓名为 Anaa 的手机号码重复数据,如下:

入库后数据如下:

设计删除SQL

大家通过Group by对手机号进行分组,然后计算每组最大ID作为保留数据,然后删除其他数据。SQL设计如下:

执行该SQL,结果如下:

大家可以看到,该SQL删除了重复的数据时,并且保留了id最大的数据(最新数据)。

设计该SQL时需要注意什么?

大家需要注意,使用 MySQL 进行 Delete From 操作时,若子查询的 FROM 字句和更新、删除对象使用同一张表时,会出现”You can’t specify target table for update in FROM clause”。错误。

比如,大家设计如下SQL,该SQL从语法来看也是实现删除 Student_Information 表重复数据,大家执行一下看下结果。

执行结果如下,大家可以看到抛出了”You can’t specify target table for update in FROM clause”错误,那么该如何解决呢?

解决这个问题的方法也很简单,就是将 select 出的结果通过中间表再 select 一遍即可,如下:

mysql root用户,mysql 强制自增,mysql5.7 cnf没有,mysql+自增值+补空,mysql innodb ngram,mysql 列转行 逗号分隔安卓php集成环境,php怎样加装扩展,php来路判断,微信支付 php服务端,admin temp php,discuz avatar.php,棋牌网站php,php网页开发就业,php 微信随机红包算法php查询mysql重复,MySQL数据库如何删除重复数据 - 数据库 - 前端,mysql 列转行 逗号分隔


php查询mysql重复,MySQL数据库如何删除重复数据 - 数据库 - 前端,mysql 列转行 逗号分隔
  • sqlite出现datalocked是什么原因 - 数据库 - 前端|
  • sqlite出现datalocked是什么原因 - 数据库 - 前端| | sqlite出现datalocked是什么原因 - 数据库 - 前端| ...

    php查询mysql重复,MySQL数据库如何删除重复数据 - 数据库 - 前端,mysql 列转行 逗号分隔
  • mysql数据量多少考虑分区 |cd usr local mysql
  • mysql数据量多少考虑分区 |cd usr local mysql | mysql数据量多少考虑分区 |cd usr local mysql ...

    php查询mysql重复,MySQL数据库如何删除重复数据 - 数据库 - 前端,mysql 列转行 逗号分隔
  • 上海西武科技有限公司怎么样 - 网络|
  • 上海西武科技有限公司怎么样 - 网络| | 上海西武科技有限公司怎么样 - 网络| ...