多表关联的SQL语句查询不出结果的原因分析 您所在的位置:网站首页 u9ubf报表没条件不出数据 多表关联的SQL语句查询不出结果的原因分析

多表关联的SQL语句查询不出结果的原因分析

2023-12-13 19:55| 来源: 网络整理| 查看: 265

如果大家有人在做数据分析和数据维护时,可能会使用到多表关联的查询语句,这样复杂的SQL语句查询不出结果会很让大家头疼,如何能够快速准确地找到哪个表或者哪个字段出现的问题,导致整个SQL语句查询不出结果。

本文章向大家介绍写自己的心得,帮助大家轻松、快速地找出问题所在!

 

D|A-B-F              A-B-C-D-E-F |                      图2C                     |E图1

 

例如下面的SQL语句

 

select A.*,B.*,C.* from A,B,C,D,E,F where A=B and A=C and A=D and C=E and B=F and A.field1='field1' and A.field2='field2' and     B.field='bfield' and C.field='cfield'

A=B代表A、B关联,其它的同理

 

分析步骤:1.首先去掉所有的字段的查询条件,去掉A.field1='field1'等,查看整个关联是否是通的,是否能查询出数据2.如果不是通的(查询出结果为空),则要找出哪两个表没有关联上,如果是通的(能够查询出结果),在多表关联中,一般都会有一个主表,其他表都与该表有直接或间接的关联(即A、C直接关联,A、E间接关联),如果存在主表的查询条件,如A.field1='field1',则从A表开始入手,根据关联查询B,C,D表,并逐个查看其他表的查询条件是否符合,直至找到不符合的地方,找到问题之所在!如果并没有图1中的主表A,而是图2这样的情况,可以从链条的某个节点出发,同样根据关联关系,查看其它的表是否符合条件,直至找到问题所在!

 

不同人会有不同的方法,但我个人认为上面的方法会更加快速的,条理清晰的找到问题的所在!希望大家在分析数据时有所帮助!

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有