乳尖春药H糙汉共妻,国产成人无码精品亚洲,少妇肉欲系列1000篇,免费永久看黄神器

公司新聞

零基礎 SQL 數據庫小白,從入門到精通的學習路線

作者:admin 日期:2023-09-06 瀏覽:

零基礎 SQL 數據庫小白,從入門到精通的學習路線

  我觀察了 865 個 SQL 入門者,發現大家在學習 SQL 的時候,最大的問題不是 SQL 語法,而是對 SQL 原理的不熟悉。

  很多初學者,往往被 SQL 能做什么,為什么會有 SQL 這門語言給迷惑到了。他們用學英語的方法,去學SQL,結果發現什么都學不到,而且感覺越來越難學,難用。想想你為什么討厭英語就明白了,每次翻開詞典,從 abandon 學起來,不到 10 頁就學不下去了,不就是因為太枯燥,太乏味了嘛。

  假如我告訴你,聽聽音樂 yesterday once more, 看看電影 iron man 就能輕松學好英語,是不是覺得有趣多了?學 SQL 和學英語一樣,選擇枯燥的學習模式,必然帶來不好的學習結果。我們追求的是輕松學 SQL 的方法。

  SQL 的原理,超級簡單,四個字,集合運算。

  所有復雜的 SQL 語句,命令都是圍繞著這個本質在做文章,添油加醋。

  如果對集合這個概念陌生,沒關系,高中畢業那么久,不記得情有可原。畢竟當時老師也不知道,風靡全球的 SQL 會基于集合理念發明出來。

  集合,最簡單的例子就是數組,比如 { a, b, c, d}。舉個形象化的例子,比如大學全班同學,這是個大集合,按照性別進而可以分成男同學集合和女同學集合。

  男同學有什么特征?高大,威猛,有胡子。

  女同學有什么特征?白嫩,溫柔,有長發。

  就這樣,我們有兩個大集合了,男同學集合,女同學集合。回到 SQL 的原理上來,針對這兩個集合,SQL 運算做的事情,無非就是這幾樣:

  尋找身高大于180cm的男同學

  尋找身高最高的男同學

  尋找有胡子的男同學

  尋找長了胡子,身高低于160cm的男同學

  統計沒有長胡子的男同學人數

  尋找最高的女同學

  尋找最白的女同學

  尋找又高又白的女同學

  尋找正在談戀愛的男女同學

  尋找曾經談過戀愛,而現在又有其他男女朋友的男同學和女同學

  你看,無非就是做這些事情。是不是對SQL立馬就有好感了呢!

  如此有趣的一件事情,教科書偏要說的枯燥(希望下面離散數學,集合理論的科普不會煩到你,不想看,完全可以跳過)

  交換律(Commutative Laws):

  A ∪ B = B∪A, A ∩ B = B ∩ A

  結合律(Associative Laws):

  (A ∪ B) ∪ C = A ∪ (B∪C) = A ∪ B∪C

  (A ∩ B) ∩ C = A ∩ (B ∩ C) = A ∩ B ∩ C

  分配律(Distributive Laws):

  (A ∩ B) ∪C = (A∪C) ∩ (B∪C)

  (A∪B) ∩ C = (A ∩ C) ∪(B ∩ C)

  等冪律(Impotent laws):

  A∪A = A,A∩A = A

  吸收律(Absorption laws):

  (A∩B)∪A = A,(A∪B)∩A = A

  同一律(Domination laws):

  A∪? = A,A∩Ω= A

  A∪Ω=Ω,A∩? = ?;

  所以,千萬別被教科書上的數學符號嚇到,而失去了學習SQL的興趣。學霸別聽我的,這些符號我知道對你完全是小菜一碟。

  下面我們用SQL來回答上面的10個男女同學問題:

  把全班男女同學登記到花名冊上

  找班上的八卦同學打聽男女朋友關系,記錄到戀愛關系秘本上

  這里用到的花名冊,戀愛關系秘本就是數據庫里的二維表。先建這兩張表,分別是 Students(花名冊表),Relationships(戀愛關系秘本)。為了更加形象,用 Excel 展示下,這兩張表分別長這個樣子:

  第一張表是 Students 花名冊表,共有 6 欄,分別解釋下含義:

  StudentId: 用來標注學生的學號,一個學生只有一個學號;

  Name:學生姓名;

  Gender:學生性別;

  Height:學生身高,cm 為單位

  Mustache:有無胡子;

  SkinColor:膚色

  第二張表是 Relationships(戀愛關系秘本),共有 6 欄,分別解釋下:

  RelationshipId: 男女朋友關系成立的編號,用來確立兩人曾經處過或正在處于關系之中;

  BoyId:男生編號;

  GirlId:女生編號;

  BeginDate:關系成立日期;

  CurrentActive:當前是否還在戀愛期;Y 表示正在戀愛;N 表示已經分手;

  EndDate:分手日期

  注意:欄位在數據庫中被稱為字段

  用 SQL 語句來表達建表的命令:

  注意:字段旁邊必須加上數據類型,規范數據長度,精度,比如 varchar(3) 表示 3 個字長。

  有關數據類型,可以參考參考官方文檔對基本數據類型的定義和舉例

  推薦可在線執行SQL的工具: http://sqlfiddle.com/

  這款工具,有兩大特點:

  支持六大數據庫,MySQL,Oracle,SQL Server,PostgreSQL,SQLite;

  支持在線編輯及執行SQL,無需自搭數據庫環境

  簡單了解下:image

  整個頁面分為1,2,3個區域。

  區域 1 的編輯器用來創建數據庫 schema ,比如建表,新建數據;

  區域 2 則用來編輯和執行 SQL;

  區域 3 用來展示 區域 2 中的 SQL 執行結果

  使用這款工具,無需你手工安裝數據庫便可以完成本指南所有的 SQL.

  完美!我們成功的完成了第一步。

  接下來,讓我們為巧婦準備好精米。

  INSERT

  使用這條 SQL 命令,將添加全班同學的個人信息,包括姓名,學號,性別,身高,膚色,有無胡子,以及男女朋友關系,(當然這可不能讓班主任知道。)

  接下來我們用 SQL 做一些有意思的事情:

  查找身高大于180cm的男同學:

  查找身高大于170cm的膚白女同學:

  查找最高的女同學:

  查找有戀愛關系的同學:

  最帥的陳冠奇居然留胡子了,讓我們記錄下:

  帥奇留胡子的原因居然是,陳冠奇和張白芷前兩天分手了,我們要記錄這段關系的破裂:

  任何的痛苦都離不開戀人的離去,張白芷居然去國外留學了,因此花名冊少了這個人:

  帥帥的陳冠奇,怎么甘心就此沉淪,他又找了莫文麗做女朋友:

  好奇的小樂,查了查莫文麗的后臺,發現她居然曾有過三次戀愛關系:

  恭喜!到此為止,所有的SQL基本操作你都會了。

  有競爭力的技術肯定是要花大功夫來磨煉的,否則人人看一遍就會的東西,賣得出什么高價呢!

  因此當大家都度過第一階段之后,如何意識到還有第二階段,第三階段,甚至第四階段就很重要了。那會影響你的長期發展。舒適區是留給平庸者的。

  從技術角度,我們習慣將 SQL 數據庫開發分為 4 個階段:入門,初級,高級,資深。

  注:技術角度可分這四個階段,并不代表做到資深,你一定能年薪百萬。可千萬別這么想,很多朋友咨詢我的第一個問題是,“黃老師,以我的水平,能要個30K不?” 這我不打包票,能做到什么收入完全看你水平和天意(沒錯,很多時候,賺大錢靠運!)

  在本文中,我只談 SQL 技術水平的晉級,不談其他。

  上面的入門指南,相信你看完之后,寫 SQL 基本掌握了。這一階段過后,就是要通過反復的操練這些 SQL ,直到你熟透這些 SQL 命令和語法。

  幫你度過這階段最好的方式,是什么呢?刷題。沒錯,簡單粗暴。這里推薦牛客網,你可以試著去刷:image

  左邊是題目,右邊編輯 SQL, 點擊【保存并調試】即可運行 SQL。系統會提示,你的答案是否通過!

  刷完這 60 多道題目,相信你的感覺一定很好!

  再推薦基本經典的小書,可以兼顧理論與實戰,具體看哪一本,依據你使用的數據庫軟件來:

  《SQL 必知必會》(綜合)

  《T-SQL Querying》中文《T-SQL 查詢》(SQL Server適用)

  《Oracle編程藝術》(Oracle適用,只要是 ASK Tom 主編 Thomas Kyte 的著作不會錯)

  打個廣告。我在微信公眾號【有關SQL】中分享了這些基礎的電子書,你可以關注后,回復1024,便可拿到!

  當你跨過了第二個階段,所有的 SQL 命令都會了,看到 SQL 題目也有自信了,自認為天下數據,為 SQL 皆可取的時候,你應該來挑戰下高難度了

  現在你的角色是河南鄭州大學的學生會主席,所有學生的信息都歸你管。別小看了這學生會主席,2017 年鄭州大學在校人數總共有7.26萬人。此時,你再查找個又白又高的女生,嘿嘿…別想歪咯,數據查詢就會很難了。看你急不急!

  怎么辦呢,SQL 命令你也玩熟了,但每次查個人都要花費個20,30秒,查個交友記錄,快則1,2分鐘,慢則半天!

  此時,你該修煉下 SQL 性能調優了。而 SQL 數據庫開發真正的挑戰才正式開始!

  要研究數據,就要從體系著手,我總結了一下目前正在使用的 SQL Server,它的知識點可以用 20 張思維導圖來表達。而 SQL 性能調優正是與這 20 個知識點息息相關。

  這20個知識點可以在這篇文章中找到:

  20 圖歸納 SQL 數據庫知識點

  如果你使用的是其他數據庫,那么一份詳細的數據庫體系圖,是必不可少的。它就是深夜里的北極星,為你照亮了前進的方向。

  當然你跟我一樣,對紙質書情有獨鐘的話,這里推薦幾本:

  綜合類的數據庫調優書:

  《數據庫索引設計與優化》

  《數據查詢優化器的藝術》

  Oracle 相關調優書:

  《Oracle Concepts》

  《Oracle 體系架構》

  《Oracle DBA 手記》(云和恩墨出品都是精品)

  MySQL 相關調優書:

  《高性能 MySQL》

  SQL Server 相關調優書:

  《Inside SQL Server 》系列

  《T-SQL 性能調優密集-基于 SQL Server 2012 窗口函數》

  這些書看下來應該會耗掉你2-3年的時間。當然,如果你愿意痛飲咖啡,用007(一周工作7天,每天連續12個小時)的速度來看書,那也可能1年左右就夠了。但不建議這么干,身體健康比什么都重要!

  當任何超過5秒的SQL,在你手下都變成了秒出時,你可能會昂天長嘯,“老子終于天下第一啦”。不過且慢,你別忘記了,你還是會被項目經理催著干活,比如改個字段,改個需求,改處bug等等。此時,你恐怕最需要的是,一個得力的左膀右臂,一個能打的需求分析,更重要的是搞定靈活多變的業務變更,甚至你要挽起袖子,自己盯著業務變更,發布更靈活適配的數據模型。此時數據建模,業務管理,數據治理,數據挖掘,安全審核等等都來了

  此時,正是你職業生涯的分水嶺。

  若你覺得你就是干不了開會,扯皮,來回折騰的活兒,就喜歡指揮機器干活,那就選擇偏技術的方向,比如運維DBA,數據庫研發。從事這條路線,意味著你要懂的更多的邊角料知識,比如操作系統,網絡協議,自動化編程,架構設計,分布式計算,云計算等。這些知識資料早已有現成的資料可以參考,只要耐得下心來學,一定有成功出頭的那一天。但也極其容易放棄,因為東西實在太多,太雜,而且有些邊緣性的學科,一時半會你還用不到,比如網絡協議。但如果不懂網絡協議,碰到數據庫安全的問題,你就容易敗下陣來,死的很慘。你的任何一個缺點都會伴隨每一次的故障而被無限放大,被很多同事視為毫無戰斗力,讓你自己都開始懷疑自己,鄙視自己。所以干這行,首先要有一顆強大的心臟,在無數的口誅筆伐之下,你要堅挺自己的信念,不要懷疑自己的判斷,丟失基本判斷能力。

  且運維不僅僅是個智力活,還是個體力活。

  白天所有運行在數據庫上的應用都好好地跑著,一般不會有大問題,看上去 DBA 很輕松。但是一到晚上,你們的活兒才剛剛開始。有索引重建,磁盤告警了;有 ETL Job 失敗,數據庫卡住了;有集群節點宕機,需要更換機器了,等等。總之 7*24 的重活,累活都來了,而且是必須趕在天亮業務開始之前修復。有時候,那些夜貓子也很兇悍,大晚上非還要搶點貨,點個夜宵啥的。一下單,系統崩潰了,你的美夢也就泡湯了。或許你感冒了,正在休息,不行你得起來;或許你正在電影院看著復聯呢,不行,你得回公司。總之,為了工作,為了搶修數據庫,你必須第一時間趕赴現場。多少年輕的DBA都曾在高壓現場,留下了人生中第一口鮮血。

  你說DBA那么累,傻子才選,你走第二條路,扯皮!

  恭喜你,你選了一條可以通向公司高層的路。也許是 CTO,也許是CEO。通過做數據運行,數據產品,或者數據分析,你認識了全公司上上下下的大小頭目,今天與運營總監吃個飯,明天與生產總監喝個咖啡。總之他們提的一切需求,都希望你全部搞定。你說你團隊人手不夠,公司不肯招人,跟他們有什么關系?你說你excel就能實現的功能,為什么非要整一套炫酷而無任何實用價值的可視化報表分析軟件?他們就想要!你說你這個需求要1個月才能做好,他們拍著你的肩膀說,“你可以的,要相信自己。倆天,頂多兩天就能搞定!”

  你帶著這么多需求回到你的辦公室,看著滿臉青春的這些小伙小姑娘們,刷著微博,舔著朋友圈,個個臉上洋溢著熱焦瑪的香氣。你好忍心讓他們陪你加班到凌晨,還自費打滴滴么!

  好不容易,2個shot的星爸爸熱焦瑪下肚,你來了精神。熬到凌晨2點,連續2,3天回家看不到老婆/老公的笑臉,還給自己打氣,一切都是為了家庭。等到交上報告一看,“這里數據改一下,口徑要和運營部統一”,“哪里整個版面太丑了,影響公司形象,再修得漂亮一些。還有,這些報表都要加上權限,不能讓其他部門人看到。好吧,明天下班前我們再談”。

  好吧,這回你只得厚起臉皮請小朋友們一起改了,晚餐自費交了KFC全家桶,全組加班人員,一律打車報銷。你默默的在群里丟了一個又一個紅包。收到一個又一個的“老板帥氣,老板再來一個,寶寶沒搶到”

  終于趕在deadline之前做完了,“怎么樣,我說你可以的吧,看好你哦。這樣,我們昨天幾個人會后碰了下,發現你原來的設計也挺好,只是稍微還要再改改;還有,數據需要增加導入導出功能…”

  如此反反復復,來來回回的折騰,某天你突然感慨,原來“別人用了一年,真的學到了我十年所用會的SQL技術”。此時,你會堅持自己的選擇是對的嗎,假如不幸的是,公司投資人撤資了,你所熟悉的環境沒了,怎么辦?

  因此,在這些零零碎碎的項目鍛煉中,你能否總結有效的規律,提高自己業務溝通的能力,掌握數據治理的策略,嚴格把控項目管理的進度,都成了你的必修課。一旦松懈和迷茫,可真是萬劫不復!

  完

  電話咨詢

<abbr id="ehohq"><form id="ehohq"><small id="ehohq"></small></form></abbr>
  • <menu id="ehohq"><dl id="ehohq"></dl></menu>

    1. <bdo id="ehohq"><span id="ehohq"></span></bdo>
        主站蜘蛛池模板: 平遥县| 正镶白旗| 安丘市| 朝阳市| 肥西县| 邳州市| 甘泉县| 曲水县| 鱼台县| 白玉县| 康保县| 岱山县| 镇平县| 蕉岭县| 龙门县| 河源市| 固始县| 南阳市| 峨眉山市| 乌兰县| 永德县| 阳春市| 长丰县| 延川县| 廉江市| 太原市| 古丈县| 洪洞县| 甘谷县| 沁水县| 桦南县| 宾阳县| 天全县| 眉山市| 曲靖市| 古丈县| 屏南县| 连州市| 迁西县| 桂阳县| 棋牌|