mysql - 如何在表中搜索特定字符串而不提及该字符串在mysql中所属的列名

标签 mysql full-text-indexing

我想搜索string 'Trevor DSouza'在表中,而不提及该字符串所属的列名。该字符串可能存储在不同的不同列中。因此,为了搜索该字符串,我编写了如下查询:-

SELECT * FROM claim_master 
WHERE MATCH (type,cheque) AGAINST('Trevor DSouza' IN NATURAL LANGUAGE MODE);

当我执行此查询时,它显示错误,例如:-

Error Code: Can't find FULLTEXT index matching the column list

因此,为了解决此错误,我创建了一个全文索引,检查为:-

ALTER TABLE claim_master ADD fulltext my_index(cheque);

那么在我尝试执行查询之后:-

SELECT * FROM claim_master
WHERE MATCH(type,cheque) AGAINST('Trevor DSouza' IN NATURAL LANGUAGE MODE);

它再次向我显示相同的错误:-

Error Code: Can't find FULLTEXT index matching the column list

同时我还可以检查所有列中的搜索字符串。有没有办法在匹配函数中传递列名称,例如:- MATCH(full_name,mode,cheque,particular,desrption,final_status) ??如果有一种方法可以一次传递列,那么首先我们必须为该列创建一个 FULLTEXT 索引???如何做到这一点???

请帮我解决这个问题。我在这个查询中陷入困境

最佳答案

您需要在与要使用的 MATCH(...) 相同的列上建立全文索引。

更改表 Claim_master 添加全文 my_index(type,cheque);

关于mysql - 如何在表中搜索特定字符串而不提及该字符串在mysql中所属的列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36441571/

相关文章:

mysql - 获取跨表列中的最大公共(public)值

Java CRC32 与 MySQL CRC32 不匹配

mysql - Sum() MySQL - PHP

python - 如何在文本文件中找到最相关的字符串?

php - mysql_fetch_array()/mysql_fetch_assoc()/mysql_fetch_row()/mysql_num_rows等…期望参数1为资源或结果

full-text-search - 用于邮件列表文件编目和搜索的文本搜索引擎

mysql - MySQL 中术语 "Stopword"是什么意思?

mysql - 我无法在包含大量文本的 Django 模型字段上使用索引。我正在使用MySQL。我应该怎么办?

mysql - 许多列上的全文索引与一个累积列上的差异

mysql - 如何使用 SIM808GSM/GPRS 扩展板将传感器数据从 Arduino UNO 发送到 MySQL 数据库