求SQL~~~~~
总数表
字段 num,freq
num是所属期的总数,freq是记录该数值所属哪一期的
区域表
字段 area_name,tot,freq
区域名称,该区域的总数,所属期
两张表靠freq关联,且不是自增字段,不是主键
假设 来了一批信息,是第20期 浙江数量是200 总数是2000
上期 即19期 浙江数量是150 总数1600
计算
(20期的浙江的200 / 2000) - (19期的浙江的150 / 1600) =所得值 X
并对X结果集 分别取正序 倒序各10条
依照以上假设,SQL结果是
区域名称--------最新一期该区域的数量即第20期--------所得值X
浙江----------------200-----------------------------X
上海----------------180-----------------------------X
假设中是只有一个区域 浙江,实际每期一有很多区域,数量未知。但每期肯定有相同的区域,做这些相同区域的计算。
将两表的记录及要求结果出来看看
总数表是
num---------------------------freq
600---------------------------2
860---------------------------3
1500--------------------------19
2000--------------------------20
区域表是
area_name------------tot------------freq
浙江-----------------200-------------2
广东-----------------100-------------2
山西-----------------101-------------2
浙江-----------------150-------------19
广东-----------------100-------------19
山西-----------------101-----
相关问答:
@s='S1,S2,S12,S23';
将@s里面的S1,S2替换成处理,未处理
来者有分.
REPLACE(@s,'S1,S2','处理,未处理')
REPLACE 不好用 自己试下
SQL code:
declare @s ......
有三个表一个是采购单格式如下
入库单表:
入库单号 产品 质检编号 入库数量
001 品种1&n ......
客户表:
客户编号 客户销售总额
aa 200
bb 300
cc ......
姓名 学科
a 语文
a 数学
b 英语
b 政治
我想得到 a 语文,数学
......
create trigger TR_Delete_pm_WorkCard
on pm_WorkCard
for delete
as
if @@rowcount=0 return
begin tran
update pm_PlanEntry
set FDispatchQty=t4.FDispatchQty - t1.FDispat ......