国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

mysql優化 - mysql 模糊查詢和order by同用如何建立索引?

瀏覽:135日期:2022-06-11 13:49:18

問題描述

比如現在有這樣一個mysql語句:

select * from city where city_name like ’%hf%’ order by created_at;

這樣的sql語句如何建立索引呢,如果是建立復合索引,使用:

key(created_at,city_name)

這個由于created_at在前面,根據索引的最左匹配原則退化成了key(created_at).

key(city_name,created_at)

肯定也不行,前面是模糊查詢,這個復合索引退化成了key(city),那么這種情況只能建立單個的索引列來解決問題嗎?請教各位大大.

問題解答

回答1:

前后都是%是不走索引的,都沒有索引退化的問題,要么改sql成前綴匹配要么加全文索引(對于短字串并不合適),再有就是對于這種基本不變的數據在應用里面是可以放到搜索引擎里的,可以利用到它的分詞器檢索

相關文章:
主站蜘蛛池模板: 吉隆县| 阿拉善盟| 阿图什市| 当涂县| 峨眉山市| 河东区| 浪卡子县| 康平县| 莱西市| 舟曲县| 灌云县| 凤凰县| 普宁市| 东安县| 都兰县| 宣武区| 靖宇县| 什邡市| 邵阳县| 大悟县| 五指山市| 商南县| 青阳县| 密云县| 徐汇区| 乐亭县| 宁都县| 白水县| 旬邑县| 阳城县| 青阳县| 万年县| 山阴县| 岗巴县| 乌什县| 开阳县| 南丹县| 朝阳县| 白玉县| 建始县| 积石山|