日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

看漫画就能学SQL,简直太cool了

發布時間:2025/3/21 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 看漫画就能学SQL,简直太cool了 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

對于SQl, 很多人學不會的原因是從一開始就沒明白,學這東西能干啥,學會了能有什么用。甚至有些人不知道‘SQL’應該怎么讀,以至于一開始興致勃勃,但是學到一半放棄了。

注意:‘sql’真的不能讀成‘燒烤’、‘惜烤’、’撒扣’、’斯購‘,另外,’MYSQL’真的不能讀成’賣燒烤’,’賣西褲‘,有學員問:那我賣什么,我回答說:你去死。

如果你真的、實在是、絕對的看不懂英文的音標,那就暫且讀’色兒扣‘吧,這是針對英語文盲特別制作的讀法。(注意我在這里并沒有瞧不起你的意思)

所以,堅持學會的根本,不在于這個知識是否有多難,而在于它帶給你的意義有多大。如果做事情沒有意義,那么你就沒有學習的動力。在數據分析的招聘中,SQL是必考的能力之一。所以學習SQL的意義,就在于你能否通過數據分析的面試,如果不能通過面試,你將窮困潦倒,顛沛流離,別人娶妻生子,兒孫繞膝,而你孤苦伶仃,滿目凄涼,垂垂老矣....

想要入門SQL,關鍵在于有沒有一個好的領路人帶你入門,所以ladys and鄉親們,放下手頭所有的農活,開始喜歡我吧,因為接下來,我將帶你輕松搞定SQL的各個語法。記住我最大的特點就是,通俗易懂的解釋一個事情。

01.理論篇:理解重要的概念

【數據】數字,文字,圖形,圖像,聲音這些都叫數據。

【數據庫】?理解數據庫的一種最簡單的方法是 將它想象成一個電子化的“文件柜”,

這個“文件柜”是一個存放數據的物理位置,不管數據是什么形式!就像法海手里的金鉑,我管你是什么妖,統統都得收進來!(電視劇里的那個金鉑看起來像一個電飯鍋的內膽,有沒有很像)。也有人說數據庫存儲數據,就像冰箱是存儲食物一樣,,什么肉啊,米啊,菜啊,都能存放,對此我也是十分十分的同意!!

有了數據庫后,所有終端設備(手機,PAD, PC)都可以直接在這個系統上查找數據和修改數據。有人問我,老師,我是安卓手機,能連接數據庫嗎,當然能了,不許瞧不起安卓系統!!

【數據表】?表是由行和列組成的一張二維表,這是關系數據庫中最基本的數據模型

【主鍵】用來表示數據的唯一性,是數據庫中非常重要的概念。在生活中我們也會使用ID來標識數據的唯一性,例如:國家用身份證來唯一標識一個人,即使你有一個雙胞胎兄弟,但只要你們的身份證號不一樣,你們就是兩個人。再比如銀行卡的卡號就是主鍵,如果兩個人卡號重復了,里面有100萬,錢算誰的呢?這事就鬧大了。

【外鍵】?關聯到其他表主鍵的字段被稱為“ 外鍵 ”,如果A表的一個字段來源于B表,那么這個字段就是A表的外鍵。

例如:成績表中的字段學號 sno 就是外鍵, 因為這個字段的值來源于學生表的主鍵sno。

【表關聯】什么是聯系呢?你是你爸爸的兒子,你是你的兒子的爸爸。這就是生活中的聯系。其實,數據之間也是有聯系的。數據庫里各個表之間如何建立聯系呢?

將多張表通過主鍵+外鍵關聯起來的方式,叫作表關聯。

例如學生選課涉及的四張表,通過主鍵和外鍵關聯在一起,就構成了一個簡易的學生選課數據庫系統。

表關聯是關系數據庫中非常核心的理念 ,它可以表達非常復雜的數據關

【概念模型】表示方法:E—R方法(也叫實體聯系法)

【一個E-R模型案例】:

【數據模型】(主要指關系模型)

SQL語句的基礎是關系數據庫,關系數據庫的基礎是關系模型,關系模型可以由E-R圖得到。

在關系數據庫中,一張表就是一個關系,所以表格的一些術語和關系的一些術語能表達同樣的意思,具體來說,有下面幾點不同:

上面講的都是數據庫方面的基本理論。理論有了,當然就得有對應的軟件實現才能用起來,不然再強大的理論都是一坨屎。這就好比,如果只有設計草圖是無法蓋起樓房的,得有具體的施工團隊才能蓋起樓房。

上面講的數據庫原理就是“設計草圖”,那么對應的“施工團隊”是誰呢?

實現數據庫原理的“施工團隊”就是常用的數據庫軟件,例如MySQL、Oracle、SQLServer等都是實現上面理論的數據庫。各個數據庫軟件的使用差別大同小異,但是因為MySQL是開源的,免費的,所以成為各大公司使用的主流,面試也主要以’賣燒烤‘為主。

02.SQL基礎篇

我經歷過很多次數據分析師面試,經常會遇到這樣一道經典的SQL筆試題。注意:這可是華為的面試題,上點心吧。

【華為經典面試題】

A(用戶購買記錄)、B(商品對應ID)、C(ID對應價格)三個表,問本月內購買商品金額最多的前三名用戶分別是誰?

【分析】

A表只有用戶和商品名字的對應關系,需要關聯到C表求得價格,但A表和C表沒有公共字段,這時發現A表和B表有公共字段【商品名字】,而B表和C表有公共字段【商品ID】,于是先用A表Join B表,再Join C表得出一張多個字段的關聯表,用Group by求出用戶購買商品的總金額,再用Order by對用戶購買商品的總金額進行降序排列,最后用Limit截取總金額前三位的用戶。

這道題看起來很難,但考到了都是一些SQL的基礎知識,包括Select、Groupby、Order by、Join、Limit。

所以,作為數據分析獅(有人喜歡把自己叫作分析狗,真是太不尊重自己了,我聽了非常氣憤),如果你以后的發展方向不是數據工程師的話,SQL只需要掌握基礎語句就可以糊弄面試了,具體包括:

  • 查詢數據(select語句)
  • 過濾數據(where語句)
  • 匯總數據(group by 語句)
  • 排序數據(order by 語句)
  • 時間函數

1 查詢數據(select語句)

【語法】select 列名稱 from表名稱

【案例】select name from world; (選取world表中‘name’這一列)

select * from world(選取world表中所有列)

2 過濾數據(where語句)

【語法】select xxxx from xxx Where 條件表達式

【案例】select * from country where IndepYear >1975

3 使用distinct關鍵詞去重:

【語法】select distinct 字段名 from 表名

【案例】select distinct class from student

4 匯總數據( Group by 語句)

【定義】什么是group by 子句,“Group By”從字面意義上理解就是根據“By”指定的規則對數據進行分組. 那么,GROUPBY 是如何分組的呢?

【案例】

所以group by也叫分組函數。

5 排序語句(order by)

Order by 指的是根據指定的列對結果進行排序,默認升序;如果希望降序,需要加上DESC關鍵字。

【語法】selectxxx from xxx where xxx order by xxx desc

【案例】篩選人口總數大于10萬的國家的信息,并且按照人口總數進行降序排序。

select * from countrywhere population > 100000

order by population desc (先篩選符合條件的行,后排序)

使用Orderby 的幾種情況:

(1)order by 作用于單個字段

(2)加desc關鍵字實現降序

(3)order by 作用于雙字段

?

先對年齡進行升序排序,然后針對相同年齡的,再根據成績升序排序

6 時間函數

關于阿里,京東,美團,快手等大部分互聯網公司,大部分數據需求都是和時間相關的,所以熟練掌握時間函數,非常的重要!!有人告訴我他不想工作,我奉勸你照照鏡子,看看鏡子中的自己,已經長得這么丑了,難道還要沒錢嗎?

真是no zuo no die,我不會罵你的,我很有修養

?

03.SQL進階篇

恭喜你,你已經看到進階篇了,現在你已經get到一個了不起的技能,媽媽再也不用擔心你沒法裝X了。下面這些資料是我們內部的一些分享資料,有人問我什么內部,你在哪個公司上班,拜托大家不要像我二姑媽似的這么八卦,要學會看重點!!進階部分需要大家了解mysql的執行原理,join的用法,SQL的執行順序等等,因為這是我們寫復雜SQL的基礎。你不會走,就想飛嗎,真的沒這么容易!!

(1)mysql中join的用法

之前網絡上流行用韋恩圖來表示各種連接查詢:

但我覺得用下面這種方式表達連接查詢,更容易理解:

有沒有覺得連接查詢竟然如此簡單,還不是多虧了我這幾張圖嗎。

(2)Mysql的執行順序:

當sql邏輯復雜后,sql的執行順序就會非常重要,SQL執行順序和書寫順序又不一樣,所以慢慢扣吧,這也是進階的基礎呢。

?

04.SQL復雜查詢

恭喜你,你都看到復雜查詢了,我覺得你很有潛力!!面對大量數據我們時常需要對他們進行匯總,分組,歸類,這時候就需要用到一些復雜的查詢方法。

1 聚合函數:【分類】聚合函數有哪些?

2 分組聚合

【定義】指的是先使用group by 分組后,再使用聚合函數對每組數據聚合

分組語句和聚合函數常常一起使用

【案例】:

3 使用having子句

【定義】篩選符合條件的組,常常和group by 一起使用。

【示意圖】

4 嵌套查詢:

(1)【定義】什么是嵌套查詢?

如果把一個查詢塊嵌套在另一個查詢塊的WHERE子句或HAVING短語的條件中,我們就稱為嵌套查詢。其中外層查詢稱為主查詢,內層查詢稱為子查詢。

(2)【執行順序】先執行內層查詢,再執行外層查詢:

(3)嵌套查詢用來解決哪些問題?

【Sql 語句】

掌握了上面這些語法,基本上你可以糊弄各種形式的面試了,最常見的考SQL的方法就是,給你一個虛擬的數據庫表結構,然后讓你按給出的條件查詢出數據,并用手寫的形式寫出在紙上。所以面試前把常用的SQL語句記清楚就OK了。

總結

以上是生活随笔為你收集整理的看漫画就能学SQL,简直太cool了的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。