2016-10-05 12 views
0

私はsql serverに新たなんだ、このクエリを記述:
実際のデータでなぜ私のクエリが正しく動作しないのですか?

SELECT top 20 y.Telno, 
     t.Cycle+'-'+y.Cycle Cycle, 
     ((y.CurBill - t.CurBill)/y.CurBill) Price 
FROM [ClubEatc].[dbo].[GetOnlineBills] y 
INNER JOIN [ClubEatc].[dbo].[GetOnlineBills] t 
    ON y.Telno = t.TelNo AND CAST(y.Cycle as int)-1 = CAST(t.Cycle as int) 


Cycle=952GetOnlineBillsにこのレコードを持っている:

TelNo   CurBill TotalBill ExecuteDate  Cycle 
4133223011  43  1209337  1395/4/21  952 


そしてCycle=951で:

TelNo  CurBill TotalBill ExecuteDate Cycle 
4133223011 349  1209295 1395/4/21 951  
計算 calcこの式で



(Curbill.Cycle[952]-Curbill.Cycle[951])/Curbill.Cycle[952]=((349-43))/349=0.87 


が、アップクエリは私にこのことを示しています?私はすべての感謝を間違えどこ起こる何

-7.11627906976744 


答えて

1

ウルコードは((43から349))/ 43と結果を与えてやっている - コードの下

使用を...

SELECT top 20 y.Telno, 
     t.Cycle+'-'+y.Cycle Cycle, 
     ((t.CurBill - y.CurBill)/t.CurBill) Price FROM [ClubEatc].[dbo].[GetOnlineBills] y INNER JOIN 
[ClubEatc].[dbo].[GetOnlineBills] t 
    ON y.Telno = t.TelNo AND CAST(y.Cycle as int)-1 = CAST(t.Cycle as int) 
関連する問題