关于大数据量的表的联合查询
1、现在有两张表,
一张表为资产(资产代码,A代码,B代码,C代码),
另一张为关系表(子类型,子代码,父类型,父代码),
关系表里面存了所有资产之间的关系。两张表的数据量差不多,大约都有一百万条数据左右,估计表里面内容的变动不会很频繁。
2、现在要做的事情是根据资产表的资产代码到关系表去查该资产的A,B,C代码。
3、我目前的做法是根据资产代码到关系表去查他的其他ABC代码,因为是树形结构的关系,所以并不是直接在关系表中就可以找到需要的结果,而是要根据资产代码到关系表里面去查的父亲或者祖先相应的A,B,C代码。写了一个存储过程,根据每一行的资产代码到关系表去查。因为查询的关系表太大,目前这个存储过程的耗时完全无法接受。请问大家有什么好的建议吗? 刚接触到这么大量的数据,完全没有经验,请大家帮忙啊!
一张表为资产(资产代码,A代码,B代码,C代码),
另一张为关系表(子类型,子代码,父类型,父代码),
关系表里面存了所有资产之间的关系。两张表的数据量差不多,大约都有一百万条数据左右,估计表里面内容的变动不会很频繁。
2、现在要做的事情是根据资产表的资产代码到关系表去查该资产的A,B,C代码。
3、我目前的做法是根据资产代码到关系表去查他的其他ABC代码,因为是树形结构的关系,所以并不是直接在关系表中就可以找到需要的结果,而是要根据资产代码到关系表里面去查的父亲或者祖先相应的A,B,C代码。写了一个存储过程,根据每一行的资产代码到关系表去查。因为查询的关系表太大,目前这个存储过程的耗时完全无法接受。请问大家有什么好的建议吗? 刚接触到这么大量的数据,完全没有经验,请大家帮忙啊!
...全文
相关推荐
应对sharding-jdbc结合mybatis实现分库分表功能 分表的联合查询采用将mysql的数据同步到elasticsearch进行筛选
**联合查询**:在分库分表后,传统的跨表查询会变得复杂。为了解决这个问题,标题中提到的“分表的联合查询”可以通过异构数据源的方式来实现。
mysql大数据量优化
**使用联合查询**: - **UNION**:当需要合并多个SELECT语句的结果集时,联合查询可以替代手动创建临时表。
SQL联合查询inner join、outer join和cross join的区别详解
使用JOIN而不是逗号(,)进行表连接的主要原因是效率。使用逗号连接的表会先生成一个巨大的笛卡尔积,然后再通过WHERE子句筛选结果,这可能导致性能问题,特别是在大数据量时。
mysql数据库分表分库的策略
"mysql数据库分库分表的策略用于解决大数据量带来的性能问题,通过减小数据库负担和缩短查询时间来提升效率。随着业务发展,单表数据量增加,会导致查询和插入操作耗时,尤其在联合查询时更为明显。分表和表分
基于MySql多表分页查询优化技术.pdf
在需要进行频繁的多表联合查询的应用中,优化分页查询性能显得尤为重要。MySql数据库性能的提升,对各类依赖数据库的应用系统具有深远的影响。


