gpt4 book ai didi

Mysql查询优化

转载 作者:行者123 更新时间:2023-11-30 23:11:38 24 4
gpt4 key购买 nike

我有两个表“类别”表,其中一列为“类别名称”和“专业”表,其中一列为“类别 ID”。

现在我正在“类别表”中搜索某些类别,然后获取具有该类别的那些专业人员。

我面临的问题是,在加入“Professional”和“category”表的情况下,它看起来好像正在搜索“Professional”表中的太多行。 (如有错误请忽略)

是否有可能仅在“类别”表中搜索返回的那些行上发生连接。 enter image description here

explain select c.id from professional_categories as c  
inner join professionals as p on p.professional_category_id=c.id
where c.professional_category_name like 'ABC%'

以下是专业表的索引。 enter image description here

最佳答案

您需要在 professionals 表的 professional_category_id 上创建一个 index

这将有助于更快和最少的搜索记录。

备选

这个问题也可以使用参照完整性约束来解决,如下所示:

如果 professional 表具有属性 professional_category_id 作为引用 category_name 属性的外键 category table 那么也可以这样实现。此外键约束 还有助于更快/最少 搜索。在这种情况下,您不需要显式professional_category_id 属性上创建任何索引

关于Mysql查询优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19534470/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com