首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

求一条SQL解决思路

2012-03-31 
求一条SQL表 aid 公司 出库数时间1A53-82A53-73A53-7表 bid 公司 入库数时间1A53-81A103-8要查询结果是公

求一条SQL
表 a  
id 公司 出库数 时间
1 A 5 3-8
2 A 5 3-7
3 A 5 3-7

表 b
id 公司 入库数 时间
1 A 5 3-8
1 A 10 3-8

要查询结果是
公司 入库数 出库数 时间
A 15 5 3-8
A 0 10 3-7  
   
 
收藏0 邀请 . 
  


[解决办法]
这时间 应该是取的入库和出库时间合并吧? 

SQL code
select a.公司 ,nvl(sum(b.入库数),0) 入库数,nvl(sum(a.出库数),0) 出库数,t1.时间from(select 时间 from a union select 时间 from b) t1left joina on t1.时间=a.时间left join b on t1.时间=b.时间where a.公司=b.公司group by a.公司,t1.时间order by a.公司,t1.时间 desc
[解决办法]
SQL code
select 公司,       sum(入库数),       sum(出库数),       时间  from (        select a.公司     as  公司,                0         as  入库数,               decode (a.是否出库, '1', 1, 0)                         as  出库数,               a.时间     as  时间            from a        union all        select b.公司     as  公司,                decode (b.是否入库, '1', 1, 0)                         as  入库数,               0         as  出库数,               b.时间     as  时间            from b        )group by 公司,时间order by 公司,时间 

热点排行
Bad Request.