表 table01
字段 add_time, mat_name, mat_wt
20110301005010 石灰 100
20110301075910 轻烧镁球 180
20110301121426 石灰 200
20110302191826 萤石 120
20110303052345 轻烧镁球 60
20110303060930 萤石 160表 table02
字段 create_time, prod_shift_group
20110301000413 丙
... 丙
20110301075901 丙
20110301080308 丁
... 丁
20110301155655 丁
20110301160336 甲
....
20110301235942 甲
20110302000347 丙
...
20110302075848 丙
20110302080452 丁
... 丁
20110302155534 丁
20110302160243 甲
... 甲
20110302185932 甲
20110303024443 乙
... 乙
20110303074642 乙现在我想在table01表里面根据日期号, mat_name, 还有prod_shift_group来求得sum(mat_wt)。
我只会写:
select mat_name, substr(add_time, 7, 2), sum(mat_wt)
from table01
where add_time > '20110301005010'
and add_time < '20110303060930'
group by mat_name, substr(add_time, 7, 2)
就是不会关联table02里面的班组。
字段 add_time, mat_name, mat_wt
20110301005010 石灰 100
20110301075910 轻烧镁球 180
20110301121426 石灰 200
20110302191826 萤石 120
20110303052345 轻烧镁球 60
20110303060930 萤石 160表 table02
字段 create_time, prod_shift_group
20110301000413 丙
... 丙
20110301075901 丙
20110301080308 丁
... 丁
20110301155655 丁
20110301160336 甲
....
20110301235942 甲
20110302000347 丙
...
20110302075848 丙
20110302080452 丁
... 丁
20110302155534 丁
20110302160243 甲
... 甲
20110302185932 甲
20110303024443 乙
... 乙
20110303074642 乙现在我想在table01表里面根据日期号, mat_name, 还有prod_shift_group来求得sum(mat_wt)。
我只会写:
select mat_name, substr(add_time, 7, 2), sum(mat_wt)
from table01
where add_time > '20110301005010'
and add_time < '20110303060930'
group by mat_name, substr(add_time, 7, 2)
就是不会关联table02里面的班组。
解决方案 »
- oracle中添加和删除数据时出错
- 求一个多表连接的SQL
- 用SQL语句怎么写两个字段(operate_Date1,operate_date2都是8位的varchar2型)的差值小于30分钟
- 问两个plsql中查询的语句怎么写了?
- oracle 怎么用触发器为timestamp类型字段更新值
- ORACLE9I已经安装完成,客户端如何配置才能使客户端连接到服务器
- 怎样把 developer6i和oracle9i连起来
- 在数据库中存储字符的问题
- PL/SQL导入dmp文件
- 并发像同一张ORACLE插入会锁表吧,有向数据库缓存并发插入,=这种方式吗?
- 格式化输出interval
- 数据库哪种查询效率高?
select mat_name,prod_shift_group,substr(add_time, 7, 2), sum(mat_wt)
from table01,table02
where table01.add_time=table02.create_tiem
add_time > '20110301005010'
and add_time < '20110303060930'
group by mat_name,prod_shift_group,substr(add_time, 7, 2)
并不能精确,
比如create_time 中的某个时间断是
20110301160336 甲
....
20110301235942 甲而add_time要去匹配这个时间断,而不是精确的··
from table01,table02
where table01.add_time=table02.create_tiem
add_time > '20110301005010'
and add_time < '20110303060930'
group by mat_name,prod_shift_group,substr(add_time, 7, 2)
from table01,table02
where table01.add_time=table02.create_tiem
add_time > '20110301005010'
and add_time < '20110303060930'
group by mat_name,prod_shift_group,to_char(add_time,'yyyymmdd')算是补充楼,可以不给分