mysql> select doc, term, item from relevanssi where doc = 26331;
+-------+------------------------+------+
| doc   | term                   | item |
+-------+------------------------+------+
| 26331 | yes                    |    0 |
| 26331 | zero                   |    0 |
| 26331 | ???                    |    0 |
| 26331 | ???                    |    0 |
| 26331 | ????                   |    0 |
+-------+------------------------+------+

我不知道那些是什么???" 是。它们不会在查询时显示:
select doc, term, item from relevanssi where doc = 26331 and term = '???';
Empty set (0.00 sec)

我真的想删除那些“???" 排。我该怎么做?

最佳答案

我有这个问题。我就是这么做的。

 select doc, term, HEX(term) hexterm, item from relevanssi where doc = 26331;

这将以十六进制显示混乱的列值。
然后,当你知道一个你想删除你可以这样做
 delete from relevanssi where  doc = 26331 AND HEX(term) = 'value from hexterm column'

(值得一提的是,Relevanssi插件开发人员对用户的询问非常敏感。)

关于mysql - 无法在MYSQL中删除的“癌症”行?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49288170/

10-09 03:30