我不知道调用了什么函数但是我试图选择匹配/具有最多输出字符的行。这是我尝试过的。
select * from table where title like '%alotofcharactershere%' limit 1
以上仅适用于:alotofcharactershere
的整个单词我真正想要的是将它分解:只需要找到一个符合最多匹配字符的行。
如果你知道我在说什么,请帮忙。提前谢谢。
答案 0 :(得分:1)
我一直在挖掘,而且我不是SQL专家,但在更换不匹配的字符后,我正在考虑按字符排序的行。
像:
SELECT * FROM your_table ORDER BY LENGTH(REGEXP_REPLACE(title, '[^abcdefg]', ''));
虽然我认为必须有更简单的东西和实际上开箱即用的东西,但这个答案可能只会让某些人想到开箱即用。
也可能有很多连接的解决方案,但这很可能比选择所有内容并在php(或类似)中对其进行排序
答案 1 :(得分:1)
目前尚不清楚你想要完成什么,所以我想知道你是否已经研究过Full Text Searches。找到 相关性 的能力可能会为您提供一些想法或替代方案。