mysql删除表中某一字段重复的记录
比如,表:event(id int(10) auto_increment primary key,
sid int(10)not null,
detail text)
我想删除表event中sid重复的记录,请问有没有这样SQL语句?或是通过其它方法?
代码如下:
delete from event as e
where id != (select min(id) from event where sid=e.sid);
delete from event
where sid not in (select mid from (select sid ,min(id) as mid from event group by sid))
alter ignore table event add unique index idu_sid (sid);
alter table event drop index idu_sid;
相关推荐
-
MySQL 添加、修改、删除表的列及约束等表的定义
ALTER TABLE:添加,修改,删除表的列,约束等表的定义. 查看列:desc 表名; 修改表名:alter table t_book rename to bbb; 添加列:alter table 表名 add column 列名 varchar(30); 删除列:alter table 表名 drop column 列名; 修改列名MySQL: alter table bbb change nnnnn hh int; 修改列名SQLServer:exec sp_rename't_stude
-
MYSQL删除表中的指定ID数据
删除A表中的ID 中的开头以B* 的数据库. 复制代码 代码如下: delete FROM A WHERE id like 'B%' 单独删除 A 表中的ID B 复制代码 代码如下: delete FROM A WHERE id = 'B'
-
在MySQL中删除表的操作教程
丢弃现有MySQL的表是很容易的.但是需要非常小心,删除任何现有的一个表后将无法恢复,因为数据丢失. 语法: 下面是通用的SQL语法丢弃(删除)MySQL表: DROP TABLE table_name ; 从命令提示符删除表: 只需要在mysql>提示符下执行DROP TABLE SQL命令. 例子: 下面是一个例子,它删除表 tutorials_tbl: root@host# mysql -u root -p Enter password:******* mysql> use TUTORI
-
mysql删除表中某一字段重复的记录
比如,表:event(id int(10) auto_increment primary key, sid int(10)not null, detail text) 我想删除表event中sid重复的记录,请问有没有这样SQL语句?或是通过其它方法? 复制代码 代码如下: delete from event as e where id != (select min(id) from event where sid=e.sid);
-
MySQL命令行删除表中的一个字段
先看看删除之前的表结构: mysql> select * from test; +------+--------+----------------------------------+------------+------------+------------+------------+ | t_id | t_name | t_password | t_birth | birth | birth1 | birth2 |
-
MySql删除表中一行的实操方法
首先你要确定能够唯一确定你那一行数据的字段或字段组合是哪些, DELETE FROM 表名 WHERE 字段1 = '' and 字段2 = '' and ...字段1,...为能够唯一确定某一行数据的字段组合,''中填写你要 删除的字段具体值就可以了 如果有主键,则直接利用主键确定某一行就可以了. DELETE FROM 表名 WHERE 主键 = '具体值'. delete from ms_cf01 where brxm='张三' and id='7598'; 其中: ms_cf01 为你所
-
获取MySQL的表中每个userid最后一条记录的方法
如下表: CREATE TABLE `t1` ( `userid` int(11) DEFAULT NULL, `atime` datetime DEFAULT NULL, KEY `idx_userid` (`userid`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8: CREATE TABLE `t1` ( `userid` int(11) DEFAULT NULL, `atime` datetime DEFAULT NULL, KEY `idx_userid
-
MySQL 删除数据库中重复数据方法小结
刚开始,根据我的想法,这个很简单嘛,上sql语句 delete from zqzrdp where tel in (select min(dpxx_id) from zqzrdp group by tel having count(tel)>1); 执行,报错!!~!~ 异常意为:你不能指定目标表的更新在FROM子句.傻了,MySQL 这样写,不行,让人郁闷. 难倒只能分步操作,蛋疼 以下是网友写的,同样是坑爹的代码,我机器上运行不了. 1. 查询需要删除的记录,会保留一条记录. select
-
Oracle 查找与删除表中重复记录的步骤方法
这时候如果临时表中有重复数据,无论是主键字段businessid有重复,还是一整行有重复都会报出违反唯一主键约束错误. 方法:group by XX having count(*)>1,rowid,distinct,temporary table,procedure 1.查询表中的重复数据a.重复一个字段 b.重复多个字段 c.重复一整行 创建测试表: 复制代码 代码如下: create table cfa (businessid number,customer varchar2(50),bra
-
如何使用MySQL一个表中的字段更新另一个表中字段
1,修改1列 update student s, city c set s.city_name = c.name where s.city_code = c.code; 2,修改多个列 update a, b set a.title=b.title, a.name=b.name where a.id=b.id •子查询 update student s set city_name = (select name from city where code = s.city_code); oracle
-
SQL Server删除表中的重复数据
添加示例数据 create table Student( ID varchar(10) not null, Name varchar(10) not null, ); insert into Student values('1', 'zhangs'); insert into Student values('2', 'zhangs'); insert into Student values('3', 'lisi'); insert into Student values('4', 'lisi')
-
MySQL数据库表中的约束详解
目录 MySQL表中的约束(constraint) 约束分类 非空约束 唯一性约束 复合约束 主键约束 自增列-AUTO_INCREMENT 外键约束FOREIGN KEY约束 CHECK约束 DEFAULT约束 MySQL表中的约束(constraint) 为了保证数据的完整性,(数据的精确性和可靠性) SQL规范以约束的方式对表数据进行额外的条件限制,可从以下四个方面进行考虑 实体完整性 域完整性 引用完整性 用户自定义完整性 约束?对表中字段的限制. 约束分类 约束作用字段的个数 单列约束
随机推荐
- node.js插件nodeclipse安装图文教程
- 小议Javascript中的this指针
- 详解CentOS7防火墙管理firewalld
- 讲解iOS开发中UITableView列表设计的基本要点
- java 中Excel转shape file的实例详解
- 在Oracle实例关闭时如何修改spfile的参数详解
- JS实现很实用的对联广告代码(可自适应高度)
- 深入理解JavaScript创建对象的多种方式以及优缺点
- PHP初学者头疼问题总结
- 两种php去除二维数组的重复项方法
- Django返回json数据用法示例
- SQL SERVER编写存储过程小工具
- Asp.Net类库中发送电子邮件的代码
- Ajax局部更新导致JS事件重复触发问题的解决方法
- 批处理bat计算上个月最后一天的日期
- 基于jquery的无刷新分页技术
- easyui简介_动力节点Java学院整理
- Android实现循环平移动画示例
- Ubuntu 使用Jni开发实例详解
- php实现比较两个文件夹异同的方法