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

MySQL 虛擬列和虛擬索引的實(shí)現(xiàn)

 更新時(shí)間:2024年08月22日 10:00:15   作者:Q z1997  
虛擬列是MySQL 5.7開始引入的新特性,本文主要介紹了MySQL 虛擬列和虛擬索引的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

是什么

Mysql 5.7 中推出了一個(gè)非常實(shí)用的功能 虛擬列 Generated (Virtual) Columns

在MySQL 5.7中,支持兩種Generated Column,即Virtual Generated Column和Stored Generated Column,前者只將Generated Column保存在數(shù)據(jù)字典中(表的元數(shù)據(jù)),并不會(huì)將這一列數(shù)據(jù)持久化到磁盤上;后者會(huì)將Generated Column持久化到磁盤上,而不是每次讀取的時(shí)候計(jì)算所得。很明顯,后者存放了可以通過已有數(shù)據(jù)計(jì)算而得的數(shù)據(jù),需要更多的磁盤空間,與Virtual Column相比并沒有優(yōu)勢(shì),因此,MySQL 5.7中,不指定Generated Column的類型,默認(rèn)是Virtual Column。

如果需要Stored Generated Golumn的話,可能在Virtual Generated Column上建立索引更加合適

綜上,一般情況下,都使用Virtual Generated Column,這也是MySQL默認(rèn)的方式

能干嘛

能對(duì) where 條件 上使用函數(shù)等原因使索引失效 如使用函數(shù) 就可以對(duì)這個(gè) 字段和函數(shù)建立一個(gè)虛擬類和虛擬索引提高效率

怎么用

比如是 sys_user 表中 create_time

在這里插入圖片描述

他是一個(gè)datetime 類型的
假設(shè)我們有一個(gè)查詢

SELECT dayofweek(create_time) from  sys_user WHERE dayofweek(create_time) = 1 

結(jié)果

在這里插入圖片描述

執(zhí)行計(jì)劃

在這里插入圖片描述

如果我們?yōu)閏reate_time 字段 建立索引 這個(gè)查詢語(yǔ)句 仍然無法使用索引 因?yàn)?函數(shù) 阻止了索引 (這里就不實(shí)驗(yàn)了啊 有興趣可以自己試試 肯定沒用)

建立一個(gè)虛擬列

在這里插入圖片描述

ALTER TABLE `qzboot`.`sys_user` 
ADD COLUMN `create_time_dayofweek` tinyint(4)  GENERATED ALWAYS AS (dayofweek(create_time)) VIRTUAL ;

新建一個(gè)虛擬索引

在這里插入圖片描述

ALTER TABLE `qzboot`.`sys_user` 
ADD INDEX `test`(`create_time_dayofweek`) USING BTREE COMMENT '虛擬索引';
SELECT dayofweek(create_time) from  sys_user WHERE dayofweek(create_time) = 1

#  sql 改造
SELECT create_time_dayofweek from  sys_user WHERE create_time_dayofweek = 1 

結(jié)果

在這里插入圖片描述

執(zhí)行計(jì)劃

在這里插入圖片描述

虛擬列不存儲(chǔ)在數(shù)據(jù)行中,但虛擬列的元數(shù)據(jù)信息會(huì)存在于相關(guān)系統(tǒng)表中,對(duì)虛擬列的添加或者刪除只會(huì)涉及這些系統(tǒng)表,不會(huì)導(dǎo)致數(shù)據(jù)表的重建,所以效率很高

到此這篇關(guān)于MySQL 虛擬列和虛擬索引的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)MySQL 虛擬列和虛擬索引內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 減少mysql主從數(shù)據(jù)同步延遲問題的詳解

    減少mysql主從數(shù)據(jù)同步延遲問題的詳解

    本篇文章是對(duì)減少mysql主從數(shù)據(jù)同步延遲的問題進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • MySQL中一條update語(yǔ)句是如何執(zhí)行的

    MySQL中一條update語(yǔ)句是如何執(zhí)行的

    這篇文章主要給大家介紹了關(guān)于MySQL中一條update語(yǔ)句是如何執(zhí)行的相關(guān)資料,由于update涉及到數(shù)據(jù)的修改,所以很容易推斷,update語(yǔ)句比select語(yǔ)句會(huì)更復(fù)雜一些,需要的朋友可以參考下
    2022-03-03
  • 詳解mysql中字符串轉(zhuǎn)為數(shù)字的三種方法

    詳解mysql中字符串轉(zhuǎn)為數(shù)字的三種方法

    這篇文章主要為大家詳細(xì)介紹了mysql中字符串轉(zhuǎn)為數(shù)字的三種常用方法,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-11-11
  • Windows10下mysql 8.0.12解壓版安裝配置方法圖文教程

    Windows10下mysql 8.0.12解壓版安裝配置方法圖文教程

    這篇文章主要為大家詳細(xì)介紹了Windows10下mysql 8.0.12解壓版安裝方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • MySQL日期格式化yyyy-mm-dd詳解(DATE_FORMAT()函數(shù))

    MySQL日期格式化yyyy-mm-dd詳解(DATE_FORMAT()函數(shù))

    MySQL提供了很多功能強(qiáng)大、方便易用的函數(shù),在進(jìn)行數(shù)據(jù)庫(kù)管理以及數(shù)據(jù)的查詢和操作時(shí),幫助我們提高對(duì)數(shù)據(jù)庫(kù)的管理效率,下面這篇文章主要給大家介紹了關(guān)于MySQL日期格式化yyyy-mm-dd(DATE_FORMAT()函數(shù))的相關(guān)資料,需要的朋友可以參考下
    2023-01-01
  • MySQL 管理

    MySQL 管理

    MySQL 管理...
    2006-12-12
  • mysql 行列轉(zhuǎn)換的示例代碼

    mysql 行列轉(zhuǎn)換的示例代碼

    這篇文章主要介紹了mysql 行列轉(zhuǎn)換的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • MySQL 中  DATE_FORMAT() 函數(shù)的使用及應(yīng)用場(chǎng)景

    MySQL 中  DATE_FORMAT() 函數(shù)的使用及應(yīng)用場(chǎng)景

    DATE_FORMAT() 是 MySQL 中的一個(gè)內(nèi)置函數(shù),用于格式化日期和時(shí)間數(shù)據(jù),它可以根據(jù)指定的格式字符串來展示日期和時(shí)間,使得數(shù)據(jù)更容易閱讀和理解,本文檔將詳細(xì)介紹 DATE_FORMAT() 函數(shù)的使用方法及其常見應(yīng)用場(chǎng)景,感興趣的朋友一起看看吧
    2024-12-12
  • MySQL?datetime類型與時(shí)間、日期格式字符串大小比較的方法

    MySQL?datetime類型與時(shí)間、日期格式字符串大小比較的方法

    這篇文章主要介紹了MySQL?datetime類型與時(shí)間、日期格式字符串大小比較,本文使用的是mysql8.0.27版本,其他版本自測(cè)一下,結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-11-11
  • mysql 5.7.18 winx64安裝配置方法圖文教程

    mysql 5.7.18 winx64安裝配置方法圖文教程

    這篇文章主要為大家詳細(xì)介紹了windows7下mysql 5.7.18 winx64安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-04-04

最新評(píng)論

无锡市| 嘉荫县| 教育| 湛江市| 九江市| 华池县| 上思县| 阿尔山市| 靖西县| 信丰县| 昂仁县| 临朐县| 泰来县| 突泉县| 嵊泗县| 镇安县| 鄂尔多斯市| 拜城县| 安康市| 博野县| 新竹县| 阿尔山市| 朝阳市| 巴彦县| 准格尔旗| 五常市| 乐都县| 肇庆市| 利津县| 星座| 二手房| 黄冈市| 静安区| 曲周县| 札达县| 莲花县| 大理市| 荆门市| 江川县| 延吉市| 都兰县|