最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql關(guān)于or的索引的問題及解決

 更新時間:2023年08月30日 10:05:00   作者:某科學(xué)的南條  
這篇文章主要介紹了mysql關(guān)于or的索引的問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

mysql關(guān)于or的索引問題

用UNION替換OR (適用于索引列)

在下面的例子中,LOC_ID 和REGION上都建有索引*

高效:

select loc_id , loc_desc , region from location where loc_id = 10 ??
union ??
select loc_id , loc_desc , region ?from location where region = "melbourne" ??

低效:

select loc_id , loc desc , region from location where loc_id = 10 or region = "melbourne"?

如果你堅持要用OR,那就需要返回記錄最少的索引列寫在最前面。

mysql or不走索引分析

select * from tableName where a=1 and (b=1 or c=1)

其中建立了ab和ac的聯(lián)合索引,但是看db監(jiān)控慢查詢的掃描行數(shù)和a=1的行數(shù)相同。

通過explain看出執(zhí)行計劃是走ab的聯(lián)合索引,但是為啥掃描行數(shù)卻是a=1的行數(shù)呢?

猜測是因為要查a=1 and b=1的數(shù)據(jù)時候,可以走ab索引,但是查出 a=1和c=1的數(shù)據(jù),就需要掃描a=1的所有數(shù)據(jù)。

可以通過聯(lián)合索引的數(shù)據(jù)結(jié)構(gòu)看出,當a相同時候,會按照b來排序。

而且mysql一般不會選擇走多個索引,除非要索引合并,但是通過explain看出來并沒有索引合并。

所以只會走ab的索引&掃描a=1的所有數(shù)據(jù)來獲取c=1的數(shù)據(jù)。

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • mysql索引對排序的影響實例分析

    mysql索引對排序的影響實例分析

    這篇文章主要介紹了mysql索引對排序的影響,結(jié)合實例形式分析了mysql使用索引提高排序速度的相關(guān)操作技巧,需要的朋友可以參考下
    2019-07-07
  • MySql中如何使用 explain 查詢 SQL 的執(zhí)行計劃

    MySql中如何使用 explain 查詢 SQL 的執(zhí)行計劃

    explain命令是查看查詢優(yōu)化器如何決定執(zhí)行查詢的主要方法。這篇文章重點給大家介紹MySql中如何使用 explain 查詢 SQL 的執(zhí)行計劃,感興趣的朋友一起看看吧
    2018-05-05
  • mysql實現(xiàn)按組區(qū)分后獲取每組前幾名的sql寫法

    mysql實現(xiàn)按組區(qū)分后獲取每組前幾名的sql寫法

    這篇文章主要介紹了mysql實現(xiàn)按組區(qū)分后獲取每組前幾名的sql寫法,具有很好的參考價值,希望對大家有所幫助。
    2023-03-03
  • MySQL中l(wèi)ike的模糊查詢優(yōu)化以及虛擬列功能詳解

    MySQL中l(wèi)ike的模糊查詢優(yōu)化以及虛擬列功能詳解

    在數(shù)據(jù)庫查詢場景中,LIKE操作符的模糊匹配是高頻需求,但傳統(tǒng)寫法往往導(dǎo)致全表掃描,成為性能瓶頸,這篇文章主要介紹了MySQL中l(wèi)ike的模糊查詢優(yōu)化以及虛擬列功能的相關(guān)資料,需要的朋友可以參考下
    2026-03-03
  • MySql分庫分表深度指南之從策略到落地

    MySql分庫分表深度指南之從策略到落地

    文章介紹了MySQL分庫分表的策略及實施方法,包括分片鍵設(shè)計、中間件選型(如ShardingSphere、Mycat),以及如何處理跨分片查詢和數(shù)據(jù)遷移,通過案例和最佳實踐,文章展示了如何解決高并發(fā)、大數(shù)據(jù)量下的查詢和事務(wù)問題,實現(xiàn)數(shù)據(jù)自治和高可用,感興趣的朋友跟隨小編一起看看吧
    2026-01-01
  • mysql8.0主從復(fù)制搭建與配置方案

    mysql8.0主從復(fù)制搭建與配置方案

    MySQL主從復(fù)制是一個異步的復(fù)制過程,就是有兩個數(shù)據(jù)庫服務(wù)器,一個是主(master)數(shù)據(jù)庫服務(wù)器,另一個是從(slave)數(shù)據(jù)庫服務(wù)器。
    2022-09-09
  • MySQL系列教程小白數(shù)據(jù)庫基礎(chǔ)

    MySQL系列教程小白數(shù)據(jù)庫基礎(chǔ)

    這篇文章主要為大家介紹了MySQL系列中的數(shù)據(jù)庫基礎(chǔ),非常適合數(shù)據(jù)庫小白的入門基礎(chǔ)篇,詳細的講解了數(shù)據(jù)庫的基本概念以及基礎(chǔ)命令及操作示例,有需要的朋友可以借鑒參考下
    2021-10-10
  • 全面了解mysql中utf8和utf8mb4的區(qū)別

    全面了解mysql中utf8和utf8mb4的區(qū)別

    下面小編就為大家?guī)硪黄媪私鈓ysql中utf8和utf8mb4的區(qū)別。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-08-08
  • MySQL對前N條數(shù)據(jù)求和的幾種方案

    MySQL對前N條數(shù)據(jù)求和的幾種方案

    本文詳細介紹了在MySQL中計算分組數(shù)據(jù)中排名前N的記錄的合計值的幾種方法,通過對比不同的解決方案,推薦使用窗口函數(shù)和臨時表的結(jié)合方案,以提高查詢性能,需要的朋友可以參考下
    2026-01-01
  • MySQL中的聚簇索引、非聚簇索引、聯(lián)合索引和唯一索引詳細介紹

    MySQL中的聚簇索引、非聚簇索引、聯(lián)合索引和唯一索引詳細介紹

    本文主要介紹了MySQL的索引類型,根據(jù)索引的存儲方式來劃分,索引可以分為聚簇索引和非聚簇索引。聚簇索引的特點是葉子節(jié)點包含了完整的記錄行,而非聚簇索引的葉子節(jié)點只有所以字段和主鍵ID,感興趣的同學(xué)可以閱讀本文
    2023-04-04

最新評論

新丰县| 汉源县| 鹤庆县| 车险| 扬州市| 浮梁县| 鹿邑县| 盈江县| 清涧县| 玛沁县| 合水县| 斗六市| 崇明县| 韶山市| 乌恰县| 岚皋县| 高阳县| 鄂尔多斯市| 南溪县| 华坪县| 临夏市| 崇左市| 遂平县| 五莲县| 常熟市| 仙居县| 遂平县| 拉孜县| 汾阳市| 民县| 沾益县| 延庆县| 五大连池市| 炎陵县| 巍山| 沙坪坝区| 咸阳市| 阿克陶县| 佛冈县| 长子县| 成都市|