小弟有兩個問題請教會SQL語法的高手們?
SQL語法問題請益?

一。如上表,小弟如果指定我要的日期資料,小弟會寫,例如:

Select * from STOCK_AAA where 日期='2007/5/28'

若想改成資料庫中最後一天的所有資料,請問語法該怎麼下呢?這樣就不用查日期,再下指令!




SQL語法問題請益?

二。如上表,小弟會把SQL_2008中的資料,撈出資料放在EXCEL中,並用EXCEL中計算收盤價的五日均線,聽朋友說,可以直接在SQL_2008中,直接算出五日均線,請問一下,若在資料庫中計算的話,請問語法為何呢?

如果不行的話,若把資料撈出來在EXCEL中計算後,再放回資料庫中存放,這樣好嗎?
1. 用 Select MAX(日期) from STOCK_AAA
就可以取得最後一天的日期。
所以組合起來就可以得到
Select * from STOCK_AAA where 日期=(Select MAX(日期) from STOCK_AAA)

2.
要取得前五天的日期集合
Select TOP 5 日期 from STOCK_AAA where 日期<= '2007/5/28' ORDER BY 日期 DESC

用最小值,就可以取到五天前的那個日期
SELECT MIN(日期) FROM (Select TOP 5 日期 from STOCK_AAA where 日期<= '2007/5/28' ORDER BY 日期 DESC)

再來用 between + 平均值

最後全部組合成一個 SQL

-----
其實到這麼複雜,用 Storage Procedure 或 配合 VIEW 會比較簡單明瞭
不想唸物理了...
感謝!感謝

小弟不是資訊專長,只是自學有興趣,所以才會問這麼淺的問題,小弟來試試

謝謝
2.
要取得前五天的日期集合
Select TOP 5 日期 from STOCK_AAA where 日期<= '2007/5/28' ORDER BY 日期 DESC

用最小值,就可以取到五天前的那個日期
SELECT MIN(日期) FROM (Select TOP 5 日期 from STOCK_AAA where 日期<= '2007/5/28' ORDER BY 日期 DESC)

再來用 between + 平均值

最後全部組合成一個 SQL

-----
其實到這麼複雜,用 Storage Procedure 或 配合 VIEW 會比較簡單明瞭


第一個可以用了,謝謝


可以再說清楚一點嗎?因為放資料的那一格好像不能放在最前面那一天,好像第五天後才會有資料,前五天應該是空值,是不是要搭配變數與迴圈才能寫出一整欄資料呢?

謝謝
可以借問一下嗎
如果要畫周線或月線資料 有人知道SQL 如何寫嗎?
謝謝 !!初學者+1
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!