1
好的,我在InnoDB中有一个表。它有一个名为“spellings”的列,它是一个TEXT字段(不是varchar)。在本专栏中,我有多种拼写方法,每种方式都用换行符分隔。例如其中一列如下:MySQL搜索TEXT字段用于匹配文本,绝对多行
Soulcalibur
Soul Calibur
然后,我有另一行使用此信息
Soulcalibur II
Soulcalibur 2
Soul Calibur II
Soul Calibur 2
现在可以说,我想找到所有包含“剑魂”行,我使用:
SELECT * FROM games WHERE spellings LIKE '%Soul Calibur%'
的问题,这是它返回两行,因为从技术上第二行确实有“剑魂”。有没有在MySQL查询中查询Soul Calibur的方法,该方法仅显示包含精确灵魂校准的字段。在解析换行符后基本上是完全匹配的。
如果我删除%,它不工作,因为第一行是技术上Soulcalibur\nSoul Calibur
这是什么? – 2013-02-17 05:34:31
好的,这不起作用。它会匹配'Soulcalibur',但不匹配'Soul Calibur',因为它没有换行符,因为它是字符串的结尾。 – 2013-02-17 05:41:40
工作,谢谢。 – 2013-02-17 05:57:33