2006/09/30

Proposal地獄


這段時間是地獄啊.....
10/4要報給老闆聽...
10/18要交到所上...
10/24書報要報告...

2006/09/24

碧潭天鵝船

今天和芬帶著小妹妹(芬姊姊的女兒)去碧潭玩,很有一個家庭的感覺…
我…老了嗎?不知道,但…我還是胖的…冏rz

2006/09/17

牽小綠綠

今天跑去新竹,和女朋友去牽車,

██ 1998年 Honda City 1.3 ██

就是上面的那種綠,小綠綠的車,

雖然是一人出一半,但是是我在開,買女朋友的名字,

終於有屬於自己的車嘍!結果家裡1993年 Ford Festiva 1.3破破車,可能要報廢了吧!

等到要繳稅之前,再考慮要辦報廢~目前加減給女朋友練車or媽媽偶爾開開~

今天牽完車,就跑到薰衣草森林,一整個小小又難開的山路,加上下雨,真難開啊!

又點第一天牽車,就操它的感覺…

晚上去阿姨家討論女朋友未來新家裝潢的事,

充實又快樂的一天!

2006/09/16

TANET2006研討會論文投稿

今天收到論文接受的通知嘍!

但是...看到審稿的評語,還真是慘忍啊:

本研究中, 作者提出一個利用網頁技術,?#91;設路機構資訊交換平台. 關於資訊交換平台
的研究, 國內外已有相當成果, 利用網頁, XML 等技術來制作平台, 也並非創舉,
作者也沒提出此平台的效能指標, 以及使用者在試用過本系統後, 覺得貢獻度如何?
內容是包含使用者所需? 另外本篇似乎投稿到"電子商務與電子化政府" 或
"網際網路創意與應用" 比較合適.


不管了,至少能拿個公費到花蓮玩個三天!

不知道有沒有人能陪我去…唉~

2006/09/14

凱達格蘭大道夜市

今天與狗兒吃飽撐撐跑去凱道夜市~


穿上紅衣,希望能比較融入~


路邊一堆"倒扁特產",倒扁抓餅、倒扁光棒、阿扁巫毒娃娃...Orz
純粹去湊熱鬧的無聊2人...

2006/09/03

MS SQL 2005 Ranking函數的使用

建立測試資料表
CREATE TABLE [dbo].[testScore](
[StdName] [nvarchar](50) COLLATE Chinese_Taiwan_Stroke_CI_AS NULL,
[CourseName] [nvarchar](50) COLLATE Chinese_Taiwan_Stroke_CI_AS NULL,
[Score] [int] NULL
) ON [PRIMARY]

裡頭資料如下:
StdName CourseName Score
AAA A 60
Joe A 100
BBB A 70
CCC A 50
DDD A 20
EEE A 10
Joe B 20
CCC B 90
DDD B 70
EEE B 10

使用Rank函數進行排名
SELECT StdName, CourseName, Rank() OVER (Partition BY CourseName
ORDER BY Score DESC) AS Rank
FROM dbo.testScore

執行結果:
StdName CourseName Rank
Joe A 1
BBB A 2
AAA A 3
CCC A 4
DDD A 5
EEE A 6
CCC B 1
DDD B 2
Joe B 3
EEE B 4


其中Ranking的函數還有下列幾種:
RANK() 不連續排名(有2個第一名,接下來會出現第3名)
DENSE_RANK() 連續排名
ROW_NUMBER() 傳回列號,搭配OVER(Order By..),可做分頁使用。
NTILE(n) 分成n個群組,並傳回該組編號(8筆分3組=111,222,33)

MS T-SQL之CTE應用在Recursive上

今天在研究CTE(Common Table Expression)的使用,意外得知可使用在Recursive上,
因此建立了簡單的Sample如下:

假設有一個TreeData的Table與Recursive的Table
Create Table TreeData(
testId [int] Identity(1,1) Not Null,
testData [nvarchar](max) Not Null Default N'xxx'
)

Create Table Recursive(
parentId [int] Not Null,
childId [int] Not Null
)

其中TreeData包含各節點的資料:
1 aa
2 bb
3 cc
4 dd
5 ee

而Recursive代表了樹狀關係
1 2
1 3
2 4
4 5

也就表示為這樣的樹狀結構
1┬2─4─5
└3

利用CTE建立T-SQL的查詢語法如下:

with tmp(testId,Data)
as(
select testId,testData From treeData where testid=2
union all
select treeData.testId,testData From treeData inner join Recursive On treeData.testId = Recursive.ChildId Inner Join tmp on Recursive.ParentId = tmp.testId
)
select * from tmp

依照不用的條件下,可找到以此條件之下的所有字節點,(如上面例子將找出2,4,5)
可在Stored Procedure特殊用法時使用。

My World