SQL資料庫程式設計大賽隨感

yangtingkun發表於2011-04-12

第一屆SQL程式設計大賽終於結束,各位評委和貝貝都辛苦了。

 

 

本來按照常規應該先貼出我第四期的答案,不過這期我的答案僅獲得了28.3分,在沒有搞清楚錯誤在哪的情況下,就沒有必要貼出錯誤答案了。

雖然這個成績有點出乎意料,但是也在情理之中。從第二期的後半段開始,生活或工作上一些事情開始多了起來,而用來思考解答問題的時間也隨之減少。到了第三期和第四期更是如此,題目有了思路和最初結果後就先扔下了,等最後剩下一天左右的時間再去測試、最佳化,因此出現一些錯誤也是正常的。一分耕耘一分收穫,付出的努力比別人少了,得到這樣的結果也是再正常不過。

這次參加比賽一直是本著重在參與、拋磚引玉的目的。如果能夠獲獎固然很好,沒有獲獎參賽的目的也算達到了。其實參賽的過程,也是自己提高的一個過程。11gr2剛出的時候簡單研究過遞迴WITH的功能,但從沒有解決過實際問題,因此瞭解僅限於語法層面,而透過第二期和第三期的鍛鍊,起碼對於遞迴WITH語句有了比較深入的瞭解。雖然第四期的結果有誤,但是解決過程中,又重新溫習了一下MODEL語法,對於這個主要用在資料倉儲領域的語法加深了了解。

除了提高自己的SQL水平,SQL大賽更是為我們展示了評委和眾多開發高手的奇思妙想。一個人水平再高,也不可能想到所有的解決方法,更不敢保證自己的解決方法就是最優的。因此,研究其他人的思路對於提高我們解決問題的能力有著重要的幫助。雖然最近實在抽不出時間去仔細研究,但是即使簡單的過了一遍,一些優異的實現方式卻使人過目難忘。除了NEWKID的每次點評外,第一期rolling pig的深入虎穴,第三期xgghxkhuangMODEL實現floyd演算法,以及00展示的利用XML特性實現的動態SQL方法,都讓人大開眼界。

還要再次感謝一下評委和貝貝,組織、出題、答疑、評審、點評、統計,這麼短的時間內這麼大的工作量,最困難的是,還要設法讀懂每個人的思路,而且有些人還不喜歡寫註釋(我就是其中之一)。所以即使對於評審結果不滿意,也請大家諒解,世界上本沒有完全公平,而評委們已經儘可能的公平對待所有的參賽者了。每個人對於SQL的理解有所不同,而每個評委的好惡也有所差別,因此沒有必要過於執著於結果,過程才是最重要的。

對於這次大賽也提幾點建議,希望下一期大賽可以更加完善。一、題目描述要明確,不要存在歧義;二、評分標準應提前公佈,所有答案評分應公佈,以示公正;三、應提供壓力效能測試資料樣本,SQL的最佳化應該是有針對性的,不太可能一個SQL對於各種情況的效能測試都表現優異。而如果參賽者自己設計的資料分佈與評委的不符,那麼難免會出現不公平的情況。

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4227/viewspace-692368/,如需轉載,請註明出處,否則將追究法律責任。

相關文章