废话不多说,先上一个表关系的图.,在这里我详细说明一下这表图的关系,我画的有点丑啊。关系外键表和表的关系我已经用箭头表示出来,互相有层级关系(location -> plant -> equip -> quantity -> point),结合数据库里面的数据我们可以查出比如location是海淀站的是plant手动开关的equip的机器1的quantity属性是关的point数据.但是我们遇到的问题是plant是比如类型一的数据有点复杂,当前者plant为类型一的时候我们查出来的是所有quantity的数据,所以这里我们要先查出来符合plant是类型一的数据然后处理.说明这么多只是为了给多表查询做基础铺垫,为什么要用到多表联合查询就是因为我们遇到了要符合多个表条件并且这些表没有直接的主外键关系要得出来的数据.结合我拿出来的表图和例子,要查询出符合plant是类型一的每个站的属性,用sql语句写出来呢就是这样,
select distinct q.AltName from quantity q,point p,equip e,plant a
where e.Location='28'and e.Rid=p.equip and p.quantity=q.rid and a.rid=11 and a.rid=e.plant
select distinct q.A