我的一些帖子对一个名为cb_full_width_post
. 我只想保留meta值为的记录nosidebar-narrow
. 这意味着我需要
识别wp\\U Posteta中具有相同post ID且具有元键条目的记录cb_full_width_post
删除步骤1中标识的所有元值不为的记录nosidebar-narrow
到目前为止,我已经提出了这个SQL来识别具有两个或多个值的帖子,这些值用于相同的元键cb_full_width_post
:
SELECT post_id, meta_key, count(*)
FROM wp_postmeta
WHERE meta_key = \'cb_full_width_post\'
GROUP BY post_id, meta_key
HAVING COUNT(*) > 1
这将返回具有多个值的wp\\u Posteta记录的结果集
cb_full_width_post
.<我被困在下一步了。我需要使用上面查询的结果集,它为我提供了需要定位的帖子ID。我需要在wp\\U Posteta中找到这些帖子ID,并删除其中的所有记录
meta_value != \'nosidebar-narrow\'
编辑:一些视觉信息
Record #1
post_id: 1
meta_key: cb_full_width_post
meta_value: Good
Record #2
post_id: 1
meta_key: cb_full_width_post
meta_value: Bad_if_duplicate
Record #3
post_id: 2
meta_key: cb_full_width_post
meta_value: Bad_if_duplicate
我只想删除记录#2,因为它有meta\\u值“Bad\\u if\\u duplicate”,而且它是一个重复的记录(与记录#1相同的post ID)。即使记录#3的meta\\u值为“Bad\\u if\\u duplicate”,我也不想删除它,因为这是它唯一的meta\\u值,即它不是重复的。