帮忙看一下。。。
我有一个表结构与记录如下:
车间 入库种类 数量
-------------
一车间 外购 100
一车间 自制 200
二车间 外购 300
二车间 自制 400
我希望出现以下形式:
车间 外购数量 自制数量
----------------
一车间 100 200
二车间 300 400
我应如何操作?
问题点数:100、回复次数:10Top
1 楼Adayuer(饭碗饭碗饭碗你在哪里?)回复于 2002-10-15 18:13:19 得分 0
你的自制数量总得有个来源吧,如果单纯从上面的表里得出你要的形式,嘿嘿...好象不太可能.
你可以按车间查询
SELECT 字段名 FROM 表名
WHERE 字段名 = "一车间"
Top
2 楼penitent(只取一瓢)回复于 2002-10-15 19:06:03 得分 20
什么数据库???
给你一个sql,oracle的
select t1.a,t1.b,t2.b from
(select 车间 a,sum(数量) b from tablename
where 入库种类='外购') t1,
(select 车间 a,sum(数量) b from tablename
where 入库种类='自制') t2
where t1.a = t2.a
只是一个思路,自己看看Top
3 楼faretel(水东居士)回复于 2002-10-15 22:53:13 得分 10
先把外购的数量选出来
再把自制的数量选出来
最后按车间逐条匹配就成了
Top
4 楼szbug(深圳虫)回复于 2002-10-15 23:10:55 得分 0
呵呵,方法很多,看你的要求了。方便的话使用数据库最好。。。以后加数据要好办。Top
5 楼caiyongqiang(蔡永强)回复于 2002-10-15 23:31:01 得分 0
统计一下,将统计的数据生成一个表,或者显示出来,很容易的事情嘛。Top
6 楼Libran()回复于 2002-10-15 23:52:42 得分 20
假设你的表名为TABLE1:
select a.车间 as 车间, a.数量 as 外购, b.数量 as 自制
from TABLE1 a join TABLE1 b
on a.车间=b.车间
where a.入库种类='外购' and b.入库种类='自制'Top
7 楼yuanlion(路人)回复于 2002-10-16 10:16:44 得分 0
如果只是显示结果,用SQL语句直接查询
如果需要操作,须建立两表之间的连接字段,使用LookUp或着计算字段可以搞定。Top
8 楼cynwhm()回复于 2002-10-16 10:29:36 得分 0
如果记录如下:
车间 入库种类 数量
-------------
一车间 外购 100
一车间 自制 200
二车间 自制 400
三车间 外购 50
我希望出现以下形式:
车间 外购数量 自制数量
----------------
一车间 100 200
二车间 0 400
三车间 50 0
应该如何?我很急?
Top
9 楼cynwhm()回复于 2002-10-16 10:31:35 得分 0
按前面几种方法二车间、三车间两条记录将不会列出。Top
10 楼Libran()回复于 2002-10-16 13:04:42 得分 50
那可就麻烦了,需要分段查询,再联合
这样:
SELECT a.车间 AS 车间, a.数量 AS 外购, b.数量 AS 自制
FROM TABLE1 a JOIN TABLE1 b
ON a.车间 = b.车间
WHERE a.入库种类 = '外购' and b.入库种类 = '自制'
union
SELECT a.车间, a.数量 AS 外购, 0 AS 自制
FROM TABLE1 a
WHERE a.入库种类 = '外购' and not exists
(select * from table1 where 车间=a.车间 and 入库种类<>'外购')
union
SELECT a.车间, 0 AS 外购, a.数量 AS 自制
FROM TABLE1 a
WHERE a.入库种类 = '自制' and not exists
(select * from table1 where 车间=a.车间 and 入库种类<>'自制')
Top




