gpt4 book ai didi

mysql - 通过 firstName 和 lastName 列搜索所有相似记录的 SQL 查询

转载 作者:可可西里 更新时间:2023-11-01 07:31:15 28 4
gpt4 key购买 nike

我正在努力在 MYSQL 中构建一个查询,通过它我可以搜索表中的 firstName 和 lastName 列,可以返回几乎匹配它的所有记录。

比如我想搜索一个名字,例如 Aditya Kumar Sharma,我的表格包含如下内容:

ID    firstName        lastName
1 Jack Mathews
2 Aditya Singh
3 James Hopes
4 Aditya Kumar Sharma
5 Adityahappy Singh

现在我想要在 firstName 和 lastName 列中包含任何这些 AdityaKumarSharma 的所有记录,这意味着我需要我的结果集中的以下记录:

ID    firstName        lastName
2 Aditya Singh
4 Aditya Kumar Sharma
5 Adityahappy Singh

任何人都可以提供一些线索,如何完成它。如果最匹配的记录排在最前面,那就更令人高兴了,即:

ID    firstName        lastName
4 Aditya Kumar Sharma

位于结果集之上,因为它完全匹配查询字符串。

编辑:我正在为我的数据库使用 InnoDB 引擎,因此 FullText 无法解决这个问题,是否有其他解决方法,或者我被迫切换我的数据库引擎?

最佳答案

我认为 FULLTEXT 搜索会起作用

SELECT *, 
MATCH ( `FirstName`, `Lastname`)
AGAINST ('+name +middle_name +lastname' IN BOOLEAN MODE) as `rel`
FROM `table`
WHERE MATCH ( `FirstName`, `Lastname`)
AGAINST ('+name +middle_name +lastname' IN BOOLEAN MODE)
ORDER BY `rel` DESC

关于mysql - 通过 firstName 和 lastName 列搜索所有相似记录的 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9955463/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com