首页 >> 人物 >> 用到复合键时如何确定索引的顺序

用到复合键时如何确定索引的顺序

2024-12-26 人物

有时,建立项目时可以不考虑顺序排列而建立PK加

因为使用数据库建模方法来建模和建立 DDL

在这种情况下,可能会伴随以下问题

建立资料库时,可能会以出乎意料的顺序排列转换成PK

必需数据库时暴发可靠性下降

转换成了很多资料库,增加了可用/修改/删去时不必要的内部工作

如何解决?

必须分析 SQL “where”子句,

并变动PK加顺序排列

我会用一个有趣的例子来解读它

表:ORDER_INFO

首再,按照 ORDER_DATE 和 SELLER_ID 的顺序排列应用资料库

移除 DATE_ID_INDEX

DATE_ID_INDEX

可以看不到,按照 ORDER_DATE 和 SELLER_ID 的顺序排列排加

再按 ORDER_DATE 顺序排列,再次按 SELLER_ID 顺序排列

那时候运行转发

首再分派转发 1,然后分派转发 2。 像这样

转发 1

转发 1 的结果

查找“10368”时暴发年底扫描

这极差,造成可靠性下降

转发 2

然后,我会在前面写到上“SELLER_ID”

删去以前建立的资料库

删去 DATE_ID_INDEX

移除 ID_DATE_INDEX

ID_DATE_INDEX

我可以看不到它应用得很好

那时候让我们最终运行转发

转发 1

转发 1 的结果

如图所示,“10368”可以在较窄的范围内寻觅

query 2

新设复合键时,必须根据转发对资料库开展顺序排列

漳州看白癜风哪里最好
南京男科医院哪里好
郑州妇科医院哪好
武汉癫痫医院哪家治疗最好
武汉看妇科哪家医院比较好
止咳化痰的药哪个效果好
抗生素导致的腹泻吃什么药效果好
西乐葆和英太青胶囊作用一样吗
新冠特效药有哪些
降糖药
友情链接