SQL,全稱是structured query language,是一種用于操作數(shù)據(jù)庫(kù)的「編程語言」。
相比其它的程序,SQL的入門難度相對(duì)較低,當(dāng)然功能限制也比較多,僅限于關(guān)系型數(shù)據(jù)庫(kù)。
對(duì)于一名不是程序員的外行人來說,學(xué)習(xí)編程的挑戰(zhàn)不下于攀登珠穆朗瑪峰。但是,在這個(gè)科技發(fā)展迅猛,熱門職業(yè)全跟程序有關(guān)的時(shí)代,學(xué)習(xí)一些編程語言很有可能會(huì)開拓職業(yè)發(fā)展的道路。
為什么推薦大家學(xué)習(xí)SQL呢?
一個(gè)重要的原因就是,這是入門數(shù)據(jù)科學(xué)、培養(yǎng)數(shù)據(jù)思維的一個(gè)不錯(cuò)開局。
在剛工不久,我便因?yàn)橐獙?duì)產(chǎn)品做數(shù)據(jù)分析而偶然接觸到了SQL。當(dāng)時(shí),一個(gè)需求是要統(tǒng)計(jì)用戶訪問產(chǎn)品的時(shí)間段,而數(shù)據(jù)量是百萬級(jí)別的!
用過Excel的表哥表姐們都知道,Excel也就能支持100多萬的數(shù)據(jù)行,而且數(shù)據(jù)越大用起來越卡。而在我們服務(wù)端開發(fā)的指教下,只用了10分鐘就跑出了SQL腳本的結(jié)果。
SQL還是進(jìn)入編程「魔法世界」的鑰匙。當(dāng)我初步學(xué)習(xí)了SQL之后,便對(duì)編程的世界少了一點(diǎn)畏懼,多了一些好奇。
在2017年,我更是系統(tǒng)地學(xué)習(xí)了Python語言,初步掌握了爬蟲和數(shù)據(jù)分析的技能,平時(shí)也能在其他人的來源代碼基礎(chǔ)上寫一些小工具。
SQL的語言結(jié)構(gòu)相對(duì)簡(jiǎn)單,初學(xué)者一般可以去W3Shools上學(xué)習(xí)。今天推薦的一款應(yīng)用,就是將W3Schools的學(xué)習(xí)資源搬到了手機(jī)端,名字叫做SQL Practice Pro。

這款應(yīng)用目前僅有英文版,包括教程和練習(xí)題兩大功能模塊。
教程按照SQL語法內(nèi)容,分為了select,where,group by,order by 等部分,內(nèi)容全部是外鏈的W3Schools上的內(nèi)容。
最有價(jià)值的功能是練習(xí)題。目前,一共有32道題目,每道題都對(duì)應(yīng)著一個(gè)或多個(gè)知識(shí)點(diǎn)。

每道題目都會(huì)提供案例數(shù)據(jù)庫(kù)的表頭和詳細(xì)的問題陳述。在文本輸入框里輸入SQL語句的時(shí)候,App還會(huì)提供快捷輸入選項(xiàng),減少打字量。
點(diǎn)擊Run Query!按鈕,App便會(huì)執(zhí)行查詢語句,并和正確的答案作比較。如果答錯(cuò)了,還會(huì)提示你錯(cuò)誤的地方。
點(diǎn)擊View Answer,可以看到參考答案。我建議先自行作答,實(shí)在不會(huì)再去看答案,這樣可以「刻意練習(xí)」SQL技能。
犯錯(cuò)并更正的時(shí)候,我們成長(zhǎng)的速度最快。

由于我之前學(xué)習(xí)過SQL,所以這里我很多的是將SQL Practice Pro用來復(fù)習(xí)知識(shí)。
用碎片化的時(shí)間,比如午休、上廁所、通勤學(xué)習(xí)一會(huì)兒,不用多久就能把教程和題目都過一遍。
手機(jī)不僅是通訊工具、娛樂工具,也能成為我們提高自我的生產(chǎn)力工具。
SQL Practice Pro目前只有安卓版本,可在Google Play上搜索下載。