沒有任何基礎的人怎麼學SQL?

我是為了進入到ERP ,具體是EHR行業做準備的。 目前只有一些VB的經驗。其他語言都沒有接觸過。想請有經驗的人推薦一些SQL的書或者網站。謝謝。

補充: 想做的ERP的實施工作。


SQL 的學習可以說是比較簡單的,尤其是你自己的手上有一些數據可以處理的時候,我也是一個自學 SQL 的菜鳥。最初想要學習 SQL 的原因是因為有些數據在 Excel 上面處理起來非常的卡頓,所以就把數據導入到 Access 進行處理,一開始的時候看完了W3Cchool 上面的教程 SQL ?ì3ì 已經可以解決基本的數據處理問題了,後來想著在深入一點,所以就買了 SQL必知必會 (豆瓣) 這本書。這是我看過最有意思的技術類書籍,短小精悍,但是實用性很強,內容也全面,一點也不枯燥,新手一邊看一遍練習基本就可以算是很順利的使用 SQL 語句了,可以說是到達熟練的那種類型了。

平常經常使用的話,很多語句就是飛快的出現在自己的腦海,不會就 Google 一下,或者翻開上面的這本書回顧一下。

最後總結:學習的資料不用太多,因為都是千遍一律的,太多的學習資料反而會讓人丟三落四,感覺永遠都學不完,學不會,學習和做人一樣,都需要節制。


抱歉,沒太注意看題目,就開始亂答了……

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

如果是初學sql的話,推薦自己安裝單機安裝一個資料庫(比如經典的mysql),然後找一本書(噹噹網找搜索mysql,然後找排名靠前的,對自己胃口的……當然,如果英語不錯的話,官方文檔是你最好的選擇),就著書實際操作下資料庫,這樣學習起來應該比較快。

對了,個人比較建議先找本講資料庫基礎、原理的書來看一遍,理論實踐結合的方式我認為是最好的

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

sql可以認為是一種編程語言,學習相對比較容易,難得是如何解決實際問題,在各種情況下通過協調滿足一定的指標。

比如如何設計表、索引等使得的查詢速度達到最快,允許犧牲一定的寫性能。

比如如何設計可以達到實時寫的能力,允許捨棄一定的讀性能。

…………

最終,還是要結合具體的資料庫、業務場景,在某方面達到最低保證的情況下,使得另一方面發揮到極致,這才是最重要的也是最難的。


進入ERP行業是做售前?實施?開發?售後?不說清楚叫我怎麼答。

以下為補充

我是不是可以這麼理解題主的問題:想先在乙方做實施工作,待有工作經驗了就跳去甲方。

1、ERP實施工作對SQL的要求並不高,會一些簡單的語句就可以。實施工作的重點是對企業管理 的認識,對行業運營流程的熟悉程度。

2、做開發的話,當然要精通SQL,靠這個吃飯的。


熟悉英文的話,請看這個網站

Learn SQL | Codecademy


初級的SQL語句很簡單,很容易學會。我的SQL入門是在資料庫原理的課上,資料庫原理的書和教材很多的,差不多的書都可以帶你入門。如果想寫好SQL的話,我認為還是要先把資料庫原理學精通吧。明白資料庫的原理,明白SQL語言的原理,就可以寫效率高的SQL語句了,畢竟在資料庫規模很大的時候,SQL語句的寫法還是非常影響效率的(可能實現同一種功能不同的語句可以有幾小時和幾秒鐘的效率差距)。另外深入以後就會接觸一些存儲過程啊,嵌入式啊什麼的(我沒有走這個方向,了解不深),但是個人認為邏輯通了以後,語言不成問題的。


如果只是寫一下查詢,刪除的語句的話,還是比較簡單的,找人教一下照貓畫虎總是可以的。

如果要做一些更深入的存儲觸發器的編寫的話,那麼就需要花時間學習了,如果一點基礎都沒有的話過程挺痛苦的,我經歷過,一旦入門之後就會好很多。

看你們的產品的成熟度,一般成熟度比較高的產品,實施人員不需要做資料庫編程的工作。不過現在很多公司在找實施人員的時候都要求對資料庫精通,其實很多都用不到。


學個SQL還要什麼經驗,增刪改查,就查麻煩點,試幾遍就知道了


推薦閱讀:

PostgreSQL 有哪些經典入門書籍?
如何評價cmu-db的peloton資料庫?
從編程語言設計的角度,如何評價SQL語言?
一條LEFT JOIN+ORDER BY的sql語句優化問題?
為什麼MySQL對SQL標準的支持那麼不誠意?

TAG:SQL | ERP | 數據分析 | eHR |