摘要: 1.ParallelPeriod--ParallelPeriodwith member [Measures].[a1] As 'ParAllelPeriod(Year,2,[时间].[月].&[2011]&[12])'select ParAllelPeriod([时间].[月].&[2011]&[10].level,1,[时间].[月].&[2011]&[10]) on columns,[Measures].[会员人数] on rowsfrom [BSUSYS_New]2.Topcountselect [Measures].[会员阅读全文
posted @ 2012-05-28 09:52 诺哥的传奇 阅读(2) 评论(0) 编辑
摘要: ALTER TRIGGER [dbo].[Trigger_userStatusChangeLog] ON [dbo].[Jinbi_User] for UPDATEAS BEGIN-- SET NOCOUNT ON added to prevent extra result sets from-- interfering with SELECT statements.SET NOCOUNT ON;declare @NewUserStatus int;declare @OrgUserStatus int;declare @UserID int;declare @InWhiteList int; 阅读全文
posted @ 2012-02-23 17:55 诺哥的传奇 阅读(9) 评论(0) 编辑
摘要: ALTER PROCEDURE [dbo].[Proc_Test_commit1] @result int output, --成功 1; 失败 0 @message nvarchar(20) output ASBEGIN SET NOCOUNT ON begin try begin tran yy insert into Test_Commit (b) values (3) insert into Test_Commit (a,b) values (1,3) set @result=1 commit tran yy ...阅读全文
posted @ 2012-02-22 11:42 诺哥的传奇 阅读(35) 评论(0) 编辑
摘要: 今天的多维数据集又挂了,原因是在Fact_Trade_log表里面有的一条记录在dbo.Dim_User表里找不到相应的属性键!那就只能去业务库查查情况咯。抽取的逻辑是先找出各张表的最大时间戳,然后增量抽取<=最大时间戳的记录--将各表最大时间戳取出--调整顺序以避免出现有交易记录无会员的情况 select @TradeLog_max=cast(ISNULL(max(Timestamp),0) as bigint) from dbo.Trade_Log‘ select @User_max=cast(ISNULL(max(Timestamp),0) as bigint) ...阅读全文
posted @ 2012-01-11 09:44 诺哥的传奇 阅读(6) 评论(0) 编辑
摘要: declare @BusinessID int declare @MSMnum bigint DECLARE MSMnum_cursor CURSOR FOR select BusinessID,MSMnum from #temp1 OPEN MSMnum_cursor FETCH NEXT FROM MSMnum_cursor INTO @BusinessID,@MSMnum WHILE (@@FETCH_STATUS <> -1) BEGIN update A set A.BusinessID=@BusinessID ...阅读全文
posted @ 2012-01-06 17:10 诺哥的传奇 阅读(4) 评论(0) 编辑
摘要: 在定制报表的过程中,常常要设定一些参数,像时间参数的设定(如createtime >= @begindate)比较好定,而要想设定参数让其可以自由筛选关键字段,需要注意以下事项(下面以设定@grade为例说明):1.如下图所示应该用Grade in (@grade)而不用Grade =@grade;2.如下图,在参数属性可用值里面,选指定值,如果选项不多可以一一罗列,如果选项较多,则应选择从查询中获取值;3.如下图,在默认值中,如要想默认全部,应该把所有选项全部添加进去。4.如下图,最后应该选择允许多个值,即可。阅读全文
posted @ 2011-12-31 16:08 诺哥的传奇 阅读(60) 评论(0) 编辑
摘要: 主要是针对那些一张订单有几条记录的信息,先前寸的EMSGold都是总的,现在想把它更新为按其礼品金币值占比分配快递费用,具体脚本如下:select ID,MAX(SEQ_NO) as MA,COUNT(ID) as Tinto #temp001from dbo.Fact_Order_Giftwhere EMSPayGold >0group by ID having COUNT(ID)>=2 --找出有多条记录的信息--#temp002主要是为了后面算最大SEQ_NO的快递费用做铺垫select ID,SUM(round(EMSPayGold*((GiftGold*GiftNum)*阅读全文
posted @ 2011-12-30 16:37 诺哥的传奇 阅读(11) 评论(0) 编辑

