屈原的优秀品质和精神:求以下SQL语句

来源:百度文库 编辑:中科新闻网 时间:2024/05/03 01:11:53
求以下SQL语句

有以下ACCESS2000数据,想查其中的任意一部分数据导到一个新表中的SQL语句.

比如"编号=N0001003,N0001008,N0001001

或是:N0001002,N0001001,N0001005,N0001008,N0001007

---------------------------------------------------------------------------

编号 名称 总数量 分类数量A 分类数量B
N0001000 零件A001 7
N0001001 零件A002 5
N0001002 零件A003 8
N0001003 零件A004 4
N0001004 零件A005 3
N0001005 零件A000 2
N0001006 零件A001 3
N0001007 零件A001 4
N0001008 零件A000 6
N0001009 零件A001 7
N0001010 零件A002 1

-------------------------------------------------------------------------------
导到新表数据表中其中"分类数量A"的值为: 如果"名称=零件A001","分类数量A=总数量-2",其它的分类数量B=总数量

编号 名称 总数量 分类数量A 分类数量B
N0001000 零件A001 7 5 2
N0001001 零件A002 5 5
N0001002 零件A003 8 8
N0001003 零件A004 4 4
N0001004 零件A005 3 3
N0001005 零件A000 2 2
N0001006 零件A001 3 1 2
N0001007 零件A001 4 2 2
N0001008 零件A000 6 6
N0001009 零件A001 7 5 2
N0001010 零件A002 1 1
求sql2000触发器

表C00001有如下字段
零件名,组别,总数量,一级数量,二级数量

(零件名,组别,总数量 的值为已知)

当组别=A时,一级数量=总数量-10, 二级数量=0
当组别=B时,一级数量=总数量+20, 二级数量=总数量*30%

当表c00001有数据插入时'一级数量,二级数量'由触发器自动算出.
----------------------------------------------------------

CREATE TRIGGER GengXinShuLiang ON C00001
FOR INSERT
AS

select 编号,名称,总数量,case 名称 when '零件A001' then 总数量-2 else 总数量 end,case 名称 when '零件A001' then 2 else null end into 新表 from 原表

ACCESS不支持case 语句,所以只能分两次更新

update 表名
set 分类数量A=总数量-2,分类数量B=2
where 名称='零件A001'

update 表名
set 分类数量B=总数量
where 名称<>'零件A001'