下載吧 - 綠色安全的游戲和軟件下載中心

軟件下載吧

當(dāng)前位置:軟件下載吧 > 技術(shù)開發(fā) > 數(shù)據(jù)庫 > postgresql分頁數(shù)據(jù)重復(fù)問題的深入理解

postgresql分頁數(shù)據(jù)重復(fù)問題的深入理解

時間:2024-03-11 15:08作者:下載吧人氣:20

問題背景

許多開發(fā)和測試人員都可能遇到過列表的數(shù)據(jù)翻下一頁的時候顯示了上一頁的數(shù)據(jù),也就是翻頁會有重復(fù)的數(shù)據(jù)。

如何處理?

這個問題出現(xiàn)的原因是因?yàn)檫x擇的排序字段有重復(fù),常見的處理辦法就是排序的時候加上唯一字段,這樣在分頁的過程中數(shù)據(jù)就不會重復(fù)了。 關(guān)于這個問題文檔也有解釋并非是一個bug。而是排序時需要選擇唯一字段來做排序,不然返回的結(jié)果不確定

排序返回數(shù)據(jù)重復(fù)的根本原因是什么呢?

經(jīng)常優(yōu)化sql的同學(xué)可能會發(fā)現(xiàn),執(zhí)行計劃里面會有Sort Method這個關(guān)鍵字,而這個關(guān)鍵字就是排序選擇的方法。abase的排序分為三種

quicksort                       快速排序   
top-N heapsort  Memory          堆排序
external merge  Disk            歸并排序

推測

分頁重復(fù)的問題和執(zhí)行計劃選擇排序算法的穩(wěn)定性有關(guān)。

簡單介紹下這三種排序算法的場景:

在有索引的情況下:排序可以直接走索引。 在沒有索引的情況下:當(dāng)表的數(shù)據(jù)量較小的時候選擇快速排序(排序所需必須內(nèi)存小于work_mem), 當(dāng)排序有l(wèi)imit,且耗費(fèi)的內(nèi)存不超過work_mem時選擇堆排序, 當(dāng)work_mem不夠時選擇歸并排序。

驗(yàn)證推測

1.創(chuàng)建表,初始化數(shù)據(jù)

abase=# create table t_sort(n_int int,c_id varchar(300));
CREATE TABLE
abase=# insert into t_sort(n_int,c_id) select 100,generate_series(1,9);
INSERT 0 9
abase=# insert into t_sort(n_int,c_id) select 200,generate_series(1,9);
INSERT 0 9
abase=# insert into t_sort(n_int,c_id) select 300,generate_series(1,9);
INSERT 0 9
abase=# insert into t_sort(n_int,c_id) select 400,generate_series(1,9);
INSERT 0 9
abase=# insert into t_sort(n_int,c_id) select 500,generate_series(1,9);
INSERT 0 9
abase=# insert into t_sort(n_int,c_id) select 600,generate_series(1,9);
INSERT 0 9

標(biāo)簽[db:關(guān)鍵字]

相關(guān)下載

查看所有評論+

網(wǎng)友評論

網(wǎng)友
您的評論需要經(jīng)過審核才能顯示

熱門閱覽

最新排行

公眾號

主站蜘蛛池模板: 婷婷激情综合网| 老司机在线精品| 欧美一级三级在线观看| 国外bbw免费视频| 亚洲韩国欧美一区二区三区 | 国产成年网站v片在线观看| 亚洲性猛交xx乱| 亚洲成人黄色在线| 99re热视频在线| 污到下面流水的视频| 成人国产一区二区三区精品| 国产一级做a爰片在线| 丰满人妻熟妇乱又伦精品视| 色依依视频视频在线观看| 欧美人成在线观看| 国产精品喷水在线观看| 亚洲av本道一区二区三区四区 | 亚洲AV无码AV吞精久久| 99精品视频在线| 正在播放西川ゆい在线| 国产精品福利电影| 亚洲高清日韩精品第一区| 99久久精品日本一区二区免费| 欧美老熟妇乱大交xxxxx| 国产美女一级毛片| 亚洲av无码兔费综合| 青青草原亚洲视频| 成年免费A级毛片免费看无码| 北条麻妃中文字幕在线观看| a免费毛片在线播放| 欧美激情综合色综合啪啪五月| 国产精品jizz在线观看直播| 久久精品国产精品亚洲| 老色鬼久久亚洲av综合| 好男人官网在线观看免费播放| 亚洲资源在线视频| 女人隐私秘视频黄www免费| 日韩欧美亚洲乱码中文字幕| 四虎成人精品一区二区免费网站 | 亚洲综合色丁香麻豆| 老汉色av影院|