请问在mysql中如何删除 两个字段相同的数据?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请问在mysql中如何删除 两个字段相同的数据?相关的知识,希望对你有一定的参考价值。
在mysql中如何删除 两个字段相同的数据。
比如在一篇文章中。标题相同。作者相同。 想把这些数据删除,然后保留一条。大家帮助一下啊。感激不尽。
我的意思是。删除mysql数据库表中,有两个字段相同的数据,比如这个表的字段有, 标题 作者 来源 时间 四个字段,但是
有很多数据标题和作者都是相同的。所以我就想把这些数据删除掉,然后只保留一条。
from
dede_archives
where
[标题]=[标题]
and
[作者]=[作者]这个应该是不行的。我是要把重复的删除。但是要保留一条。比如有两篇文章。他们的作者
和标题相同的。那么这一般是重复的文章。所以我想把一篇删除。保留一篇。因为数据比较多。所以要用sql语句执行。大家帮忙想想怎么弄。是dedecms
里面主键盘应该只是id号码。大家帮忙一下啊。 参考技术A
也遇到同样问题, 后来自己写出来了.
根据主键id删除, 每次删除一条重复 , 需要多执行几次DELETE from tabName where id in (
SELECT tab.* from (
SELECT id from tabName GROUP BY CONCAT(col1,col2) having COUNT( CONCAT(col1,col2) ) > 1
) tab
)
参考技术B "在一篇文章中。标题相同。作者相同"是两篇文章吧 会让人误解的
另外你说的那种方法不可能实现 那违背了数据库原理 不能有相同的两行
除非这两行还有其他不同的字段 要用其他字段才能判断 比如文章编号等 参考技术C 用表的别名,sql语句这样:
delete from tablename as t1,tablename as t2 where t1.title=t2.title本回答被提问者采纳
sql如何自动在数据上加上一个字段
比如数据库中有几万条数据,现在想在content字段的所有数据前面加上“百度”两个字,请问要如何实现。
2楼,照你的方法,不行的。。。
content是varchar(200),但是加不上了
适合sqlserver 且content字段为字符类型 参考技术A update table set content=CONCAT("百度",content )
mysql 语法
加不上了?空间满了?那先修改字段类型咯 varchar(255) 参考技术B 查询吗?加列?
如果是的话只要
select '百度' as title,content from table
这样就行了吧
以上是关于请问在mysql中如何删除 两个字段相同的数据?的主要内容,如果未能解决你的问题,请参考以下文章