作者crazyexile (Silverblue)
看板C_Sharp
標題[問題] Linq 巢狀查詢
時間Mon Mar 27 22:28:14 2017
目前正在將手上的SQL查詢改寫成Linq
遇到巢狀查詢的問題一直轉不出來
還望板上的大大指點一下迷津
[問題描述]
資料表中有TimeStamp, Value兩個欄位
需要將查詢到的資料依照TimeStamp做累積
[SQL語法]
Select TimeStamp, (
Select SUM(Value)
From [Data] as E
Where E.TimeStamp >= D.TimeStamp
) as AccValue
From Data as D
Order by D.TimeStamp
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.161.107.155
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_Sharp/M.1490624896.A.9FB.html
1F:→ brian80122: 括號內的d.timestamp是對的嗎 03/28 04:09
2F:→ brian80122: 可能我功力不夠 覺得這sql怪怪的 試試group吧 03/28 04:11
4F:推 J002: 推awwseed大... 03/28 19:47
5F:→ crazyexile: 感謝awwseed大大指點!! 今天用兩段式的方式試出來 03/28 21:27
7F:推 Litfal: 兩種都是O(n^2),重視效率的話建議不要這樣寫 03/28 22:25
8F:→ Litfal: 不對阿,你寫的只是group再sum而已,你只是要這樣? 03/28 22:45
9F:→ crazyexile: 兩種寫法都可以達到我要的結果,不過我寫的似乎比較差 03/29 00:42
10F:→ Litfal: 你的看起來只是把每個相同時間的sum起來再輸出,awwseed大 03/29 01:32
11F:→ Litfal: 的才有把不同時間的累加起來阿 03/29 01:33
14F:→ crazyexile: ->awwseed 第一種寫法比較好理解! 03/29 21:01
15F:→ Litfal: 你那個是group sum,跟awwseed的不同時間累加不一樣 03/29 22:16