PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)_php技巧

本文实例讲述了PHP查询并删除数据库多列重复数据的方法。分享给大家供大家参考,具体如下:

<?php
$con = mysql_connect("localhost","root","");
if (!$con)
{
    die('Could not connect: ' . mysql_error());
}
$db_selected = mysql_select_db("test_db", $con);
if (!$db_selected)
{
    die ("Can/'t use test_db : " . mysql_error());
}
$sql = "SELECT * FROM friend";
$result=mysql_query($sql,$con);
while($myrow=mysql_fetch_row($result))
{
    $arr_data[$myrow[0]]=$myrow[1]."-".$myrow[2];
}
$arr_unique=array_unique($arr_data);
$arr_rep=array_diff_assoc($arr_data,$arr_unique);
//显示前后量
echo count($arr_data)."-".count($arr_unique);
foreach($arr_rep as $key=>$value){
  $sql_del = "DELETE FROM friend WHERE id = '{$key}' ";
  $result=mysql_query($sql_del,$con);
}
// 一些代码
mysql_close($con);
?>

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索数据库
, php
, 查询
, 删除
多列重复数据
数据库 添加多列、数据库索引 多列、oracle数据库删除多列、excel筛选多列重复项、excel多列重复数据,以便于您获取更多的相关知识。

时间: 2024-09-16 18:08:16

PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)_php技巧的相关文章

php删除文件夹及其文件夹下所有文件的函数代码_php技巧

复制代码 代码如下: <? function deldir($dir) { //先删除目录下的文件: $dh=opendir($dir); while ($file=readdir($dh)) { if($file!="." && $file!="..") { $fullpath=$dir."/".$file; if(!is_dir($fullpath)) { unlink($fullpath); } else { deld

PHP 删除一个目录及目录下的所有文件的函数代码_php技巧

复制代码 代码如下: /***** *@dir - Directory to destroy *@virtual[optional]- whether a virtual directory */ function destroyDir($dir, $virtual = false) { $ds = DIRECTORY_SEPARATOR; $dir = $virtual ? realpath($dir) : $dir; $dir = substr($dir, -1) == $ds ? subs

Oracle 查询与删除表中的重复记录sql语句

方法:  代码如下 复制代码 group by  XX having count(*)>1,rowid,distinct,temporary table,procedure 下面语句可以查询出那些数据是重复的:  代码如下 复制代码 select 字段1,字段2,count(*) from 表名 group by 字段1,字段2 having count(*) > 1 将上面的>号改为=号就可以查询出没有重复的数据了. 想要删除这些重复的数据,可以使用下面语句进行删除  代码如下 复制代

sql 删除数据库中的重复记录方法

删除数据库中的重复记录(且仅保留一条有效记录)示例-  代码如下 复制代码 create table A ( userID int identity(1,1), userName varchar(20), userPwd varchar(20), userEmail varchar(50) ) insert into A(userName,userpwd) select 'qin','qin' union all select 'qin','qin1' union all select 'qin

确定Oracle数据库表中重复记录的方法

作为一个Oracle数据库开发者或者DBA,在实际工作中经常会遇到这样的问题:试图对库表中的某一列或几列创建唯一索引时,系统提示ORA-01452:不能创建唯一索引,发现重复记录. 下面我们以表code_ref为例来讨论这个问题及其解决办法. ERROR位于第1行: ORA-01452: 无法 CREATE UNIQUE INDEX:找到重复的关键字 Oracle系统提示不能对表code_ref创建一个唯一索引,因为系统发现表中存在重复的记录.我们必须首先找到表中的重复记录并删除该记录,才可以创

删除MySQL重复数据的方法_Mysql

本文实例讲述了删除MySQL重复数据的方法.分享给大家供大家参考.具体方法如下: 项目背景 在最近做的一个linux性能采集项目中,发现线程的程序入库很慢,再仔细定位,发现数据库里面很多冗余数据.因为在采集中,对于同一台设备,同一个时间点应该只有一个数据,然而,数据库中存入了多个数据.对于如何造成了这个结果,一时没有想清楚,但为了解决入库慢的问题,首先要删除冗余数据. 问题描述 数据库的表结构很简单,如下: 复制代码 代码如下: +----------------+--------------+

Oracle数据库中去除重复数据

  在平时的开发中,我们经常遇到数据表中出现重复的数据,那么该如何解决呢?这里介绍两种情况下的数据去重方法,一.完全重复数据去重;二.部分字段数据重复去重. 一.完全重复数据去重方法 对于表中完全重复数据去重,可以采用以下SQL语句. Code CREATETABLE"#temp"AS (SELECTDISTINCT * FROM 表名);--创建临时表,并把DISTINCT 去重后的数据插入到临时表中 truncateTABLE 表名;--清空原表数据 INSERTINTO 表名(S

MSSql简单查询出数据表中所有重复数据的方法_MsSql

本文实例讲述了MSSql简单查询出数据表中所有重复数据的方法.分享给大家供大家参考,具体如下: 这里直接给出下面的例子: SELECT * FROM SYS_LogContent slc WHERE slc.LogInfo_ID IN ( SELECT slc2.LogInfo_ID FROM SYS_LogContent slc2 GROUP BY slc2.LogInfo_ID HAVING COUNT(*)>1 ) 简单说明: 关键代码在于上面的括号中.要想查询出所有重复的数据,可以按照某

怎样删除表中的重复数据,谢谢大家

问题描述 怎样删除表中的重复数据,谢谢大家 表内容如下: id fwbm kjbh sfxm dj yl ....................... 52578 d01142 d011422015928 001 .400 0 54.70 54.70 0 0 2015-09-28 00:00:00.000 NULL 52579 d01142 d011422015928 040 2.990 2 5.98 5.98 0 0 2015-09-28 00:00:00.000 NULL 52580 d0