Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 删除具有重复meta_值的重复帖子_Mysql_Sql_Wordpress - Fatal编程技术网

Mysql 删除具有重复meta_值的重复帖子

Mysql 删除具有重复meta_值的重复帖子,mysql,sql,wordpress,Mysql,Sql,Wordpress,我一直在想如何删除Wordpress数据库中的重复帖子。更具体地说,我希望删除wp_postETA表中meta_key itemID具有相同meta_值的所有wp_帖子 换句话说,我不希望两篇或更多的文章都没有相同的标题,也不希望有相同的itemID meta_值,但我不知道该怎么做 仅供参考,我通常使用的查询如下 通过下面的第一个查询,我可以看到哪些meta_值被重复,以及重复了多少次。另外,在第二个查询中,我可以看到哪些帖子是重复的,只是根据它们的标题我没有想到这一个 一, 二, 感谢您的光

我一直在想如何删除Wordpress数据库中的重复帖子。更具体地说,我希望删除wp_postETA表中meta_key itemID具有相同meta_值的所有wp_帖子

换句话说,我不希望两篇或更多的文章都没有相同的标题,也不希望有相同的itemID meta_值,但我不知道该怎么做

仅供参考,我通常使用的查询如下

通过下面的第一个查询,我可以看到哪些meta_值被重复,以及重复了多少次。另外,在第二个查询中,我可以看到哪些帖子是重复的,只是根据它们的标题我没有想到这一个

一,

二,


感谢您的光临,祝您圣诞快乐

对于标题重复的记录,您只需执行以下操作:

DELETE FROM wp_posts 
WHERE ID NOT IN ( SELECT id FROM(SELECT id,title FROM wp_posts GROUP BY title) )
对于meta关键字,您应该首先连接两个表并执行相同的操作。

您尝试过这个吗?
SELECT bad_rows.*
from wp_posts as bad_rows
inner join (
select post_title, MIN(id) as min_id
from wp_posts
WHERE post_type = 'post'
AND post_status = 'publish'
group by post_title
having count(*) > 1
) as good_rows on good_rows.post_title = bad_rows.post_title
and good_rows.min_id <> bad_rows.id
DELETE FROM wp_posts 
WHERE ID NOT IN ( SELECT id FROM(SELECT id,title FROM wp_posts GROUP BY title) )