mybatis、mysql使用函数实现英文模糊查询中文的功能
生活随笔
收集整理的這篇文章主要介紹了
mybatis、mysql使用函数实现英文模糊查询中文的功能
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近需要做個mysql英文模糊查詢中文的功能,常規寫法是在表中添加一個要搜索中文的英文字段用于存儲要查詢中文的英文拼音或者拼音首字母。
這樣確實簡單方便,但是我不想這么做,我希望mysql本身就能支持這樣的查詢功能。于是翻遍了資料,終于找到了這個方法,只需要將函數寫入數據庫中,數據庫中所有表字段都能支持這個功能。不需要做如何修改即可使用。
參考資料:mysql中文字段轉拼音首字母,以及中文拼音模糊查詢 - zenghansen - 博客園
此功能需要用到兩個mysql函數:
CREATE DEFINER=`root`@`%` FUNCTION `pinyin`(P_NAME VARCHAR(255)) RETURNS varchar(255) CHARSET utf8mb3 BEGINDECLARE V_COMPARE VARCHAR(255);DECLARE V_RETURN VARCHAR(255);DECLARE I INT;SET I = 1;SET V_RETURN = '';while I < LENGTH(P_NAME) doSET V_COMPARE = SUBSTR(P_NAME, I, 1);IF (V_COMPARE != '') THEN#SET V_RETURN = CONCAT(V_RETURN, ',', V_COMPARE);總結
以上是生活随笔為你收集整理的mybatis、mysql使用函数实现英文模糊查询中文的功能的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 幸福指数报告 -- 数据可视化+聚类分析
- 下一篇: 如何网络成瘾 - 作者:貘貘(转自Gam