mysql 左连接多个表,其中两个表数据为空,导致不能用到索引

2024-11-18 17:35:44
推荐回答(1个)
回答1:

这种数据有意义吗?这种要从应用程序出发,写一个完整的数据处理过程,把数据取到内存,然后分析内存存储的数据,再返回。
还有你数据采集方法就有问题,在做数据的时候怎么允许这么多的连接,我们在操作数据的时候就做到表与表之间的关系紧密相连,把数据连接变换为数据更新。
比如我像数据库插入A表ID、配置与单号、数量,那么与此同时我在另一个关联的表里面就更新了单号和数量。操作过程用存储过程实现。这种操作就为数据库逻辑性建立了基础,为后来的数据使用节约了查询时机。又比如说我们做ERP软件,在我们做一个表单提交动作的时候,我就已经插入了新的单据记录、更新了日志、更新了库存或者其他的状态、更新了BOM。最后我去查询某个表的时候实际上我们就是单纯的查询一个表,这样我们就为客户节约了查询时机。
我不知道你同意我的做法不,反正这种查询你没做错,但是确切一点你的数据关系和整个数据库耦合性太差,造成你查询慢,而且我也看得明白你是要一个表一个表的去汇总,然后连接查询,汇总的时候就启用了group by机制,在做大量的排列进出栈工作。