当前位置:数据库 > Oracle >>

我需要写一个oracle数据库的SQL,操作三张表,第一张表是城市,第二张表是企业,第三张表是数据汇总

城市的ID对应企业里面cityID,企业的ID对应数据汇总里面regionID,数据汇总表里有三个字段,日数据数,月数据数,年数据数,里面放的都是数量,要求,查询ID为1234的城市下的所有企业的日数据数,月数据数,月数据数,这里是把这个城下下每个企业的三种数量拿出来,加在一起,取三个总的数量,效果图如下,希望sql语句高手给个答案,是oracle数据库操作哦,关键是怎么拼,怎么循环着查我不会。
追问:城市是一个集合,根据每一条的ID去查企业,查出来的企业也是个集合,根据每条的ID去查数据汇总,然后把三个汇总加起来,得到这个城市的所有企业汇总的总数,大哥,这样的话你上面那个可以执行吗嗯三个表
答案:select 城市id,城市名称,sum(日数据),sum(月数据),sum(年数据) from 城市表 a,企业表 b where a.id=b.cityID group 日数据,月数据,年数据
其他:Select a.城市名,Sum(日数据),sum(月数据),sum(年数据)
From  城市 a,企业  b, 数据汇总 c
Where a.id=b.cityid
And b.id=c.rigionid
And a.id='1234'
Group By a.城市名 select a.id,a.城市名称,sum(日数据),sum(月数据),sum(年数据),sum(日数据+月数据+年数据) 
from 城市表 a,企业表 b,汇总表 c 
where a.id=b.cityID and b.id=c.regionID and a.id='1234'
 group by a.id,a.城市名称 你的意思应该是ID1234下面有很多个城市,每个城市都对应一个城市ID,按照你的描述,你的单个表应该是这样的
城市(ID,城市ID,城市名称);
企业(企业ID,城市ID);
数据(regionID,日数据,月数据,年数据);

 select 城市.name,sum(数据.日数据),sum(数据.月数据),sum(数据.日数据)
    from 城市,企业,数据
  where 城市.id=1234
     and 城市.cityId=企业.cityId
     and 企业.ID=数据.regionID
group by 城市.name 

上一个:两台相同的windows2003,A服务器上安装了oracle数据库,想在B上复制oracle数据库,包括帐号信息。谢谢!
下一个:oracle数据库集群 ,修改RAC1的密码 会不会影响到 RAC2 ,RAC2的密码是不是也会被修改

Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,