mysql在进行类似concat的比较时不返回结果

rkue9o1l  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(372)

我正在mysql中构建一个查询,以获取特定列的soundex与给定值的soundex类似的记录
我正在提交此查询:

select nombre_busqueda, 
       soundex(nombre_busqueda), 
       soundex('derticia'), 
       concat('%', (soundex(nombre_busqueda)) , '%')  
from jugador j 
WHERE idjugador=472

得到以下信息

nombre_busqueda
dertycia oscar alberto alvarez

soundex(nombre_busqueda)
D632641634162

soundex('derticia')
D632

concat('%', (soundex(nombre_busqueda)) , '%')
%D632641634162%

因此,进行比较并得出结果似乎是完美的。但当我提出以下问题时:

select nombre_busqueda, 
       soundex(nombre_busqueda), 
       soundex('derticia'), 
       concat('%', (soundex(nombre_busqueda)) , '%')  
from jugador j WHERE 
soundex('derticia') like concat('%', (soundex(nombre_busqueda)) , '%')

一无所获!我做错了什么?对我来说这很明显应该管用!

zpgglvta

zpgglvta1#

交换服务器两侧的参数 LIKE :

select nombre_busqueda, 
       soundex(nombre_busqueda), 
       soundex('derticia'), 
       concat('%', (soundex(nombre_busqueda)) , '%')  
from jugador j 
WHERE soundex(nombre_busqueda) like concat('%', soundex('derticia') , '%')

相关问题