日期:2014-05-16  浏览次数:20549 次

默认值怎么统计几条记录的数据

上图,把同单号的总金额统计到金额字段(默认值)而且会自动更新。
------解决方案--------------------
引用:
5楼-----------------PERSISTED这关键词好像用不到,因为我的是2000,我是sql新手,还不够了解触发器,看来只能使用触发器,使用2楼的语句先查询再修改该列了。。。。(补充一下,同一单号记录会随时改变),能提供简单一点的触发器?

为什么非要用触发器呢?你可以将update的语句放在insert 脚本后面呀,把insert和update放在同一个存储过程里面。。。不明白触发器哪里好。。。出了问题排查难死了。。。
给你个例子吧:

create table TB(
DH int not null,
QTY int not null,
DJ numeric(10,2) not null,
JE numeric(10,2) null--as QTY*DJ PERSISTED
)

create trigger dbo.insert_update_TB on TB after insert
as
begin
set nocount on
declare @DH int,@JE numeric(10,2)

select @DH=DH,@JE=sum(QTY*DJ) from inserted group by DH
update TB set JE=@JE where DH=@DH
end
--这个触发器只能实现一次插入相同的单号,可多条批量插入,但是如果一次同时插入不同单号的,就不行了,统计就可能不准了。

你自己的数据insert  到表里面试试