MySQL從刪庫到跑路(2) 大爺的SQL私房菜

2021-10-06 04:37:14 字數 2594 閱讀 4656

夜色如墨,月涼如水,一輪皎潔的圓月高高地掛在夜空之上,平日裡鼾聲如雷的室友今夜也停止了打鼾,如此靜謐的夜晚,李有為卻輾轉難眠。

時間悄然來到凌晨一點半,他已經在窗邊站了53分鐘23秒,現在他腦海裡全是大爺的一言一行、一舉一動,一顰一笑,這些彷彿就像一部經典電影值得他翻來覆去細細品味。

什麼是資料庫管理系統,什麼是資料庫,什麼是表,什麼是列,什麼是行,大爺今天講的這一系列話,現在他依然歷歷在目。

1:資料庫(database)

」資料庫就是存放資料的倉庫。「大爺的解釋很直白,對李有為來講也和淺顯易懂,校長的辦公室裡有許多檔案櫃,這乙個個檔案櫃其實就能算的上是乙個個資料庫。

每個資料庫都有乙個名字,比如學校資料庫,學生資料庫,教師資料庫,且是唯一的
2:表(table)

校長的檔案櫃裡有許許多多的檔案,這些不同的檔案按照某種種類劃分,記錄著不同的資訊,其中有學生的資訊,老師的資訊,學院專業相關資料,記錄學生資訊的檔案可以看做是學生表,記錄老師資訊的檔案可以看做老師資訊表,對檔案櫃這個資料庫來說,這些檔案就是表.

每張表同樣也有乙個名字,比如學生表,老師表,專業表,且名字是唯一的
3:列

表是由列組成的,所有表都由乙個列或多個列組成,每一列儲存著一條特定的資訊(也可以稱之為屬性)。例如乙個學生表,可能記載了學生的學校,姓名,性別,年齡等,這些分別記錄在各自的列上。

4:行乙個表是由許多行資料組成,例如學生表裡,每一行資料其實對應了乙個學生的資訊。

為此大爺特地舉了個例子,形象生動的說明了資料表裡面的行和列。

學號姓名

性別年齡

愛好1404110004尋歡男

21美女

1404110005留香男

22美女

1404110006中棠男

23美女

1404110007中棠男

23美女

上面這個**就可以看做是乙個簡單的資料表,它一共有5列,分別記錄了學號、姓名、性別、年齡、愛好這五種屬性。一共有五行,分別記錄了學號1404110004這五位不同學號學生的資訊。

5:主鍵

乙個表的每一行資料都應該有唯一標識以此來區分和其他行,例如上面的學生表,如果沒有學號這個唯一標識,那麼06號和07號的中棠同學各方面的資訊都是一樣的,就很容易學校方被搞混。

因此,主鍵就是在乙個資料表裡,能夠用一列或者多列組合的,能夠唯一標識表中每一行資料的資料。

主鍵的優點:方便資料操縱和管理
例如:如果以後老師使用教務系統修改中棠同學的成績,如果沒有主鍵區分兩個中棠同學的卻別,那麼老實怎麼知道修改哪乙個中棠同學的成績。

6:資料庫管理系統(dbms)

現在,大部分人都直接稱mysql、sqlserver為「資料庫」,這其實是錯誤的叫法,mysql、sqlserver這些嚴格意義上叫做資料庫管理系統(database management system)它們是操作和管理資料庫的管理系統,它們在幫助我們訪問資料庫。

為此,大爺同樣舉了個形象生動的例子,校長辦公室的檔案櫃是資料庫,檔案庫里的檔案是資料表,那麼管理這些檔案櫃、檔案的人就是資料庫管理系統(dbms)

7:sql

sql——結構化查詢語言(structured query language),是一門專門用來與資料庫溝通的語言。

用句最直白的話來說,要想和資料庫打交道,就必須懂sql,因為資料庫只聽得懂這種話。

sql簡單易學,功能強大,學完之後幾乎以與所有的資料庫打交道,可謂是一勞永逸,最關鍵的一點是,sql誕生已經幾十年來,他的基本語法基本上從來沒有變過,而且現在大資料領域的hql,spark sql相關的查詢,依然沿用的sql的基本語法。

萬里長城永不倒,學習sql相當好。
8:sql語句
select(選擇、選取)顧名思義,就是從乙個或多個表中查詢資料。

其最基本結構為 select 列名 from 庫名.表名

這句話的意思就是:

從某個資料庫的某個表裡面選擇、選取某些列相關的資料

(注:如果已經開啟了某個資料庫,則可以直接省略庫名如果列名寫作「*」,則表示查詢所有的列名)

select

*from test.human_base_info limit

10

現在我們在回過頭來,看這句sql的意思,這句sql表示,從test資料庫下的human_base_info表中查詢所有列的資訊並且只展示10條記錄。

"*"是萬用字元,表示選擇資料表裡的所有字段

limit 10 限制結果為10條,limit 100 限制結果為100條

如果不對結果做限制,則會把表中所有的結果全部展示。資料量一多立刻拉閘。

李有為執行那句sql,結果不多不少,剛好十條。

一位高深莫測的大爺,一本神奇的《mysql從刪庫到跑路》,李有為只知道大爺教他這些,是為了提高他的裝逼能力,有利於他畢業找工作。

可是他不知道的是,當他接觸到sql的時候,他的命運就已經發生了改變。

歷史的巨輪緩緩向前,天命,誰能扭轉運程?

從刪庫到跑路 2

1 查詢整張表的所有資料 select from myfirst schema.pets 如果當前表的資料比較多,只想看到特定行的資料 select from pets where name shagou 在上面這個查詢語句中,可以制定任何列為條件 select species from pets ...

MySQL,從刪庫到跑路

1 刪除表中指定記錄 mariadb vincen delete from 資料表名 where 指定條件 2 同時刪除表中的記錄 mariadb vincen delete from 資料表名 where 欄位名 between 條件1 and 條件2 3 刪除表中所有的記錄 mariadb vi...

MySql從刪庫到跑路 那年我真的差點跑路了

人生大起大落落落落落落,實在是太刺激了,下面這真是乙個悲傷的故事。那年公司 erp 系統剛進行公升級。因為公司陸續上了 mes 和 pdm 系統。為了加快整個公司資訊化平台的統一,請了個第三方公司來做中間介面。然後故事開始了。某乙個晚上,第三方人員問我要 erp 的 sa 密碼。我很警惕 你要幹嘛?...