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)我真的想删除那些“??”一排排。我该怎么做?
发布于 2018-03-14 22:00:15
我有过这个问题。我就是这么做的。
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插件开发人员对用户的询问非常敏感。)
发布于 2018-03-14 21:53:59
可能有一些字符编码错误,以?结尾。您可以使用主键(id)删除它们。在您的情况下,这可能会很困难,因为您没有唯一的主键。
也许您可以创建一个具有自动增量值的列,并使用生成的id删除它们。
https://stackoverflow.com/questions/49288170
复制相似问题