天天看點

excel 字元串拼接_學習使用Sqlserver并沒你想得那麼難-會Excel即可學會Sqlserver

大家一談資料庫,就覺得非常高深莫測,深不見底,非凡人敢去觸摸。但Excel的話,沒人敢說自己不會使用吧(相反一大堆人的履歷上寫着精通OFFICE所有軟體套件)。換作其他非微軟廠商的資料庫,的确很容易産生這樣的畏懼感,包括筆者在内,對其他資料庫也是不敢靠近。但Sqlserver,出自微軟之手,可以讓你大為改觀,請看下文一一述說。

小小插曲

在微軟系的産品系列中,大家都可以從網絡上非常容易找尋得到,微軟也是大放水,對盜版破解容忍度非常高。

但是其他廠商的産品,你可知道沒這樣的福氣了,近期在做一個項目時,接觸到SAP的産品,想下載下傳一個其在PowerBI上使用的資料連接配接驅動,奇葩到搜尋全網後,不止百度,連google都不能找到這些驅動,隻能從其官網上下載下傳,并且隻能用商業使用者的帳号體系才能下載下傳到(不知道是否是管理者之類的進階帳号才能通路,沒有細究)。

是以,對于非微軟系的産品上手程度之複雜,從此也可一窺而知,連個軟體都不提供,連練手的機會都沒有,談何學習呀,是以也不要指望他們從使用者的體驗角度能夠做出多好的産品。

也談微軟系産品

用過Windows、OFFICE軟體的人,都能感受到微軟産品的細膩,無窮無盡的界面化操作,操作過程中的自提示,友好的向導功能帶領新使用者快速上手,并且配以非常詳盡的官方文檔和示例說明,全方位地掌握每個細節。

在Sqlserver上,也不例外,看完此篇,筆者相信你也會認可此篇所提到的觀點:像使用Excel一般使用Sqlserver。

使用Excel是一種怎樣的體驗?

在OFFICE産品中,要數Excel的使用群體、使用頻率最為廣泛,這裡說的Excel,其實也可類比在其他Word、PowerPoint等元件上。

Excel一款小小的資料處理分析小工具,蘊含了非常多的功能,大部分的功能都是提供了菜單化操作、結合滑鼠、鍵盤快捷鍵,可以非常流暢地在資料海洋裡遨遊。任何一個新使用者接觸Excel,都不會産生太大的恐懼感。

随着學習的一步步加深,對現有的功能的重複性繁瑣操作開始提出一些要求,能否幫我自動化一些來處理,這樣就帶出了宏和VBA的層面。

可以用錄制宏的方式,記錄目前的操作步驟,再結合一點點的VBA知識,用程式設計語言的變量、循環、選擇結構等,将自動生成的宏代碼略略加工一下,即可完成自動化的重複性工作,開始脫離界面的重複性機械操作。

沒法達到宏和VBA的使用水準也不必沮喪,因為有一些走得更遠的人,已經不止于讓自己手頭的工作自動化起來,還為大部分國中級使用者做出了插件,讓代碼封裝起來,直接回歸界面化操作輸出給普通使用者使用。例如Excel催化劑插件就是很經典的案例。

且看Sqlserver的使用和Excel有多像

Sqlserver作為一款優秀的資料庫軟體,其使用的群體遠不像普通人所定義的那麼窄,不止于專業的軟體開發者、資料庫管理人員DBA才會使用得上,對于普通的資料工作者,其仍然有天然的親和力,可以讓類似Excel使用者的群體來過渡使用。

幾乎一切操作都可以界面化

通路Sqlserver伺服器的方式,一般情況下是使用其用戶端工具SSMS來完成(估計太優秀了,也沒有什麼第3方的用戶端引起太大的關注,其他資料庫産品倒有好多第3方用戶端的出現,足見微軟所做的産品之優秀)

在SSMS上操作Sqlserver,幾乎所有的操作,都可以通過類似操作Windows、OFFICE軟體那樣,通過圖形化界面,滑鼠式完成。

excel 字元串拼接_學習使用Sqlserver并沒你想得那麼難-會Excel即可學會Sqlserver

SSMS界面

上圖上方的菜單欄、左側的資料庫對象樹結構,通過菜單和對象樹滑鼠右鍵,幾乎可以滿足我們日常所需操作的任務。

當然一般來說,熟練之後,特别是寫資料查詢SQL,通過右側的編輯區敲代碼完成也不難,類似我們使用Excel時,對函數寫得非常熟練,不想使用函數向導直接敲函數名、函數參數的體驗差不多。

界面化操作也不代表需要掌握所有功能,也不代表每個功能有界面操作就很容易了解,就像學習Excel一樣,有些功能如資料分析工具,規劃求解等,雖然也是界面,但也需要深刻了解其實作原理才能真正用得好。Sqlserver的功能較Excel這樣的大衆工具軟體更難了解,後面會再次寫相關文章介紹以資料分析師的視角,最應該掌握什麼功能,哪些功能投入産出比更高。

像錄制宏一般地自動生成SQL語句

Excel裡有錄制宏功能,幫助我們快速學習VBA,在Sqlserver上,同樣有類似于錄制宏的界面操作實際對應的SQL腳本是什麼的功能。

excel 字元串拼接_學習使用Sqlserver并沒你想得那麼難-會Excel即可學會Sqlserver

對表、視圖、存儲過程等右鍵都有生成相應SQL的快捷操作

excel 字元串拼接_學習使用Sqlserver并沒你想得那麼難-會Excel即可學會Sqlserver

建立表的SQL,裡面包含很多很難記住的SQL文法可以自動生成

excel 字元串拼接_學習使用Sqlserver并沒你想得那麼難-會Excel即可學會Sqlserver

其他的一些界面化操作,也可生成對應的SQL語句

excel 字元串拼接_學習使用Sqlserver并沒你想得那麼難-會Excel即可學會Sqlserver

建立使用者這種低頻的SQL語句,首選界面生成

簡單改造生成腳本自動化

有了以上的SQL自動生成後,了解好SQL語句的含義,哪些地方可以使用簡單變量替換即可生成一條新的SQL指令,然後可以借助在Excel上拼接字元串的方式快速生成多條SQL指令,進行批量化操作。

excel 字元串拼接_學習使用Sqlserver并沒你想得那麼難-會Excel即可學會Sqlserver

Excel上生成多條SQL語句

excel 字元串拼接_學習使用Sqlserver并沒你想得那麼難-會Excel即可學會Sqlserver

複制到SSMS上腳本編輯區,點選運作即可完成

更進階别的腳本自動化

資料庫有存儲過程,類似Excel的VBA代碼過程片段的概念,可以通過程式設計語言的方式,寫各種複雜的邏輯處理,最後封裝成一個過程(方法),下次直接運作此過程即可實作批量操作。

excel 字元串拼接_學習使用Sqlserver并沒你想得那麼難-會Excel即可學會Sqlserver

存儲過程豐富的可程式設計性,實作更複雜功能

在Sqlserver的存儲過程中,可以使用幾乎所有的T-SQL語句及指令,生成的結果甚至可以生成新的表資料,将資料導出到外部,資料大範圍轉換等等,結合代理作業的功能,更可以定時自動化開啟。

結語

Sqlserver入門真心不難,對于資料分析工作者來說,無需像專業開發,資料庫運維等掌握一大堆高深的知識,亦可輕松唯我所用,隻用其對資料分析工作最精華的部分,相信一個正确的引導,可以讓學習使用Sqlserver的過程,類似于學習使用Excel一般地愉悅,後續更多精彩,歡迎繼續關注。

筆者未來聚焦在資料領域的分享,不限于Excel,會分享更多Sqlserver、dotNET、Azure、PowerBI等話題,更新資料分析的能力,歡迎繼續關注。

關于Excel催化劑

Excel催化劑先是一微信公衆号的名稱,後來順其名稱,正式推出了Excel插件,插件将持續性地更新,更新的周期視本人的時間而定争取一周能夠上線一個大功能子產品。Excel催化劑插件承諾個人使用者永久性免費使用!

Excel催化劑插件使用最新的布署技術,實作一次安裝,日後所有更新自動更新完成,無需重複關注更新動态,手動下載下傳安裝包重新安裝,隻需一次安裝即可随時保持最新版本!

繼續閱讀