加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

数据库计划 – 一再列以加速查询速率?

发布时间:2021-05-17 12:28:35 所属栏目:编程 来源:网络整理
导读:问题没有多大意义,但我想不出更好的问题来办理这个题目. 我有以下表格 项目 id 名字 顾主 id id_project 名字 付出 id id_customer 约会 总和 当用户进入体系时,他将可以会见某个项目.此刻,我想列出该项目标全部付款,这应该很简朴: SELECT FROM payments whe

问题没有多大意义,但我想不出更好的问题来办理这个题目.

我有以下表格

项目

> id
>名字

顾主

> id
> id_project
>名字

付出

> id
> id_customer
>约会
>总和

当用户进入体系时,他将可以会见某个项目.此刻,我想列出该项目标全部付款,这应该很简朴:

SELECT FROM payments where id_customer in (SELECT id from customers where id_project = 5)

我的题目是:假如以这种方法将列id_project添加到付款表不是更好,那么查询将更轻易,更快捷.

办理要领

看来你在问 denormalization是否公道.

Denormalization is the process of attempting to optimize the read performance of a database by adding redundant data or by grouping data. In some cases,denormalization helps cover up the inefficiencies inherent in relational database software. A relational normalized database imposes a heavy access load over physical storage of data even if it is well tuned for high performance.

谜底老是“取决于”,以是这是我的履历法例:

假如……

>数据量不大
>你还没有举办大量的联接
>和/或数据库机能今朝不是瓶颈

然后保持正常化.是的,非类型化更快,但它也意味着您在体系中有冗余数据 – 必需维护并保持同步的数据.这些数据不再是“一个来历”,而是可以偏离的多个来历.跟着时刻的推移,这是有风险的,以是你不该该这样做,除非你有充实的来由去做,有一些基准支持.

我只会在…时反类型化

>数据量很是大
>毗连很昂贵,你必需做许多工作来得到简朴的查询返回
>数据库机能是瓶颈和/或您但愿尽也许快地举办

在当代硬件上插手很是快,但它们永久不会免费.

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读