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

Mysql中一千萬條數(shù)據(jù)怎么快速查詢

 更新時間:2021年12月06日 09:57:56   作者:java冢狐  
很多人在使用Mysql時沒有考慮到優(yōu)化問題,如果遇到上千萬數(shù)據(jù)量的表,查詢上千萬數(shù)據(jù)量的時候會發(fā)生什么問題,本文就來介紹一下如何快速查詢一千萬條數(shù)據(jù),感興趣的可以了解一下

普通分頁查詢

當我們在日常工作中遇到大數(shù)據(jù)查詢的時候,第一反應就是使用分頁查詢。

mysql支持limit語句來選取指定的條數(shù)數(shù)據(jù),而oracle可以使用rownum來選取

mysql分頁查詢語句如下:

SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset
  • 第一個參數(shù)用來指定第一個返回記錄行的偏移量
  • 第二個參數(shù)指定返回記錄行的最大數(shù)目
    • 當相同的偏移量時,數(shù)據(jù)量越大,花費時間越長
    • 當相同的數(shù)據(jù)量時,偏移量越大,花費時間越長

如何優(yōu)化

經(jīng)過上面的總結(jié),我們可以很清晰的看到當偏移量大,數(shù)據(jù)量大的時候,查詢的時間還是挺多的,所以我們就針對這兩種來著手優(yōu)化

偏移量大

采用子查詢方式

我們可以先定位偏移位置的id,然后再查詢數(shù)據(jù)

select * from test limit 1000000,10
select id from test limit 1000000,1
select * from test where id>=(select id from test limit 1000000,1)limit 10

?通過執(zhí)行我們可以發(fā)現(xiàn),第一條花費時間最大,第三條比第一條稍微好一點,而且子查詢使用索引速度更快。

但是只是適用于id遞增的情況

采用id限定方式

這種方法要求更高,id必須是連續(xù)遞增,而且還得計算id的范圍,然后使用between,sql如下:

select * from test where id between 1000000 and 1000100 limit 100;
select * from test where id>=1000000 limit 100

結(jié)果很快

這里limit是限制了條數(shù),沒有采用偏移量

優(yōu)化數(shù)據(jù)量大問題

  • 返回結(jié)果的數(shù)據(jù)量也會直接影響速度
  • 減少不需要的列,查詢效率會明顯提升

到此這篇關(guān)于Mysql中一千萬條數(shù)據(jù)怎么快速查詢的文章就介紹到這了,更多相關(guān)Mysql 快速查詢內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL 常見數(shù)據(jù)拆分辦法

    MySQL 常見數(shù)據(jù)拆分辦法

    在生產(chǎn)環(huán)境中,由于業(yè)務的增長或者業(yè)務的拆分,DBA經(jīng)常需要拆庫操作。那么我們常見的拆庫手段有哪些呢
    2016-07-07
  • 解決Mysql建表時報錯invalid?ON?UPDATE?clause?for?'create_date'?column

    解決Mysql建表時報錯invalid?ON?UPDATE?clause?for?'create_d

    這篇文章主要介紹了解決Mysql建表時報錯invalid?ON?UPDATE?clause?for?'create_date'?column問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • mysql limit分頁優(yōu)化詳細介紹

    mysql limit分頁優(yōu)化詳細介紹

    MySQL最常用也最需要優(yōu)化的就是limit,MySQL的limit給分頁帶來了極大的方便,但數(shù)據(jù)量一大的時候,limit的性能就急劇下降,需要的朋友可以參考下
    2016-12-12
  • mysql中格式化數(shù)字詳解

    mysql中格式化數(shù)字詳解

    格式化在我們?nèi)粘i_發(fā)中必不可少,最近在遇到了關(guān)于mysql格式化數(shù)字的需求,所以下面這篇文章主要給大家介紹了關(guān)于mysql中格式化數(shù)字的相關(guān)資料,分別介紹了format函數(shù)和rpad 和 lpad 給定位數(shù),不足補充自定義字符,需要的朋友可以參考下。
    2017-07-07
  • MySQL9.0的兩種部署模式及各個版本發(fā)布的新功能

    MySQL9.0的兩種部署模式及各個版本發(fā)布的新功能

    本文主要介紹了MySQL9.0的兩種部署模式及各個版本發(fā)布的新功能,文中通過圖文示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-08-08
  • MySQL中Truncate用法詳解

    MySQL中Truncate用法詳解

    Truncate是一個能夠快速清空資料表內(nèi)所有資料的SQL語法。這篇文章介紹了Truncate用法及注意事項,并和drop,delete方法進行對比。需要的朋友可以收藏下,方便下次瀏覽觀看
    2021-12-12
  • 一步步教你利用Mysql存儲過程造百萬級數(shù)據(jù)

    一步步教你利用Mysql存儲過程造百萬級數(shù)據(jù)

    因工作需要維護一張中建表數(shù)據(jù)內(nèi)置,所以得造數(shù)據(jù)所以使用存儲過程來造數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于如何一步步利用Mysql存儲過程造百萬級數(shù)據(jù)的相關(guān)資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-03-03
  • 與MSSQL對比學習MYSQL的心得(一)--基本語法

    與MSSQL對比學習MYSQL的心得(一)--基本語法

    最開始接觸的數(shù)據(jù)庫為MSSQL,不過最近項目需求,仔細學習了下MYSQL,下面就對比MSSQL,把MYSQL的學習心得分享給大家
    2014-06-06
  • Mysql中被鎖住的表查詢以及如何解鎖詳解

    Mysql中被鎖住的表查詢以及如何解鎖詳解

    這篇文章主要介紹了Mysql中被鎖住的表查詢以及如何解鎖的相關(guān)資料,這些方法可以幫助你釋放鎖并恢復表的正常使用,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-03-03
  • MySQL三表聯(lián)合查詢操作舉例

    MySQL三表聯(lián)合查詢操作舉例

    在mysql查詢語句中,為了實現(xiàn)查詢到某些信息,我們會用到多表的聯(lián)合查詢,下面這篇文章主要給大家介紹了關(guān)于MySQL三表聯(lián)合查詢操作的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-03-03

最新評論

伊通| 台安县| 莒南县| 安福县| 姚安县| 泽普县| 喀什市| 金乡县| 遵化市| 海林市| 塘沽区| 新津县| 襄城县| 龙南县| 吕梁市| 汶上县| 醴陵市| 罗田县| 康乐县| 曲阳县| 怀宁县| 双桥区| 阿合奇县| 邵东县| 雅安市| 宣汉县| 开平市| 泸州市| 萨嘎县| 聂荣县| 钦州市| 贡觉县| 通河县| 五台县| 松潘县| 原阳县| 云霄县| 宣城市| 金昌市| 汤原县| 上饶县|