删除具有重复值的Post Meta

时间:2016-03-08 18:48:58

标签: mysql wordpress woocommerce

我需要从表中删除重复的元数据值,其中重复值共享相同的post_id。导入错误,并且有数十万行,并且有很多重复值。

因此,在下面的示例中,有两行,其中post_id为12,meta_value为6,只有一行。

meta_id    post_id    meta_key               meta_value
-------    -------    --------               ----------
1          12         attribute_pa_length    6
2          12         attribute_pa_length    6
3          12         attribute_pa_length    9
4          35         attribute_pa_length    8
5          35         attribute_pa_length    12

1 个答案:

答案 0 :(得分:1)

这将为您留下较小的meta_id

DELETE T1
FROM YourTable T1, YourTable T2
WHERE T1.post_id = T2.post_id   
  AND T1.meta_value = T2.meta_value
  AND T1.meta_id > T2.meta_id