标题:请教行间怎么计算?
只看楼主
xctz
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-5-2
 问题点数:0 回复次数:6 
请教行间怎么计算?
求教查询问题,实在解决不了了,哪位高手能帮帮我,谢谢了。


铜,锡的每日报价 数据
id datetime code name bid
142425 2006-4-28 10:53:00 1 铜 67300
141819 2006-4-27 10:58:00 2 锡 85000
141817 2006-4-27 10:58:00 1 铜 69550
141191 2006-4-26 10:57:00 2 锡 84500
141177 2006-4-26 10:52:00 1 铜 68000

想得到的结果

id datetime code name bid 涨跌
142425 2006-4-28 10:53:00 1 铜 67300 -2350
141819 2006-4-27 10:58:00 2 锡 85000 +500

想得到的结果是每个品种最后时间一次报价及比上次报价的涨跌幅

[此贴子已经被作者于2006-5-2 12:06:34编辑过]

搜索更多相关主题的帖子: 行间 name datetime code 
2006-05-02 12:05
球球
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:1146
专家分:265
注 册:2005-11-28
得分:0 

同步更新系统自动完成:更新前的记录是放在临时表deleted中,更新后的记录是放在临时表inserted中,那么求每个品种最后时间一次报价及比上次报价的涨跌幅应该很好求了.
这个用到的是同步更新!

[此贴子已经被作者于2006-5-2 13:16:41编辑过]


好累
2006-05-02 12:21
xctz
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-5-2
得分:0 

没有直接计算的好办法了吗?

2006-05-02 12:29
球球
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:1146
专家分:265
注 册:2005-11-28
得分:0 
想不到其它的方法.因为更新数据是在不断的做删除和插入.

好累
2006-05-02 12:45
球球
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:1146
专家分:265
注 册:2005-11-28
得分:0 

我简单的做了一下:
create table tab
(
tID int,
bid int,
ud int
)
go

insert into tab
values(1,67300,0)

select * from tab

create trigger tabtrg
on tab
for update
as
declare @n int,@m int,@nm int
select @n=bid from deleted
select @m=bid from inserted
set @nm=@m-@n
select ud=@nm from inserted
delete from tab where tID in(select tID from deleted)
insert into tab select tid,bid,@nm from inserted
go

update tab set bid=67400 where tID=1
select * from tab


好累
2006-05-02 13:50
球球
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:1146
专家分:265
注 册:2005-11-28
得分:0 
ud是代表涨跌幅,简单的弄了下,可以做个参考.
还有我二楼回复的先前有些误导,我也改了一下,你再看看.

[此贴子已经被作者于2006-5-2 13:53:24编辑过]


好累
2006-05-02 13:52
LouisXIV
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:789
专家分:0
注 册:2006-1-5
得分:0 
可以用子查询求差值,很麻烦就是了。

2006-05-04 09:38



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-61542-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017667 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved