SQL:我能玩出這花樣兒?

前言

SQL 是什麼?

官方解釋:

SQL (Structured Query Language:結構化查詢語言) 是用於管理關係資料庫管理系統(RDBMS)。

SQL 能用來幹什麼?

通俗的講:

SQL 讓您可以訪問和處理資料庫,包括資料插入、查詢、更新和刪除。

SQL:我能玩出這花樣兒?

SQL

下面讓我們看看小美是如何零基礎學習 SQL 的:

Lucifer,最新領導讓我負責資料庫開發,需要寫 SQL,但是我零基礎沒學過,有辦法快速入門嗎?

小美啊,SQL 語言其實入門不難,我先來教你最簡單的增刪改查基礎吧。

好的,我試試看,奧力給。

Ok,那我們先來一個最簡單常用的 SQL 語句 DUAL 查詢:SELECT SYSDATE FROM DUAL;

SQL:我能玩出這花樣兒?

sysdate

使用這個 SQL 語句可以檢視資料庫當前時間,當然也可以把

SYSDATE

換成任意東西。

例如:

計算器:

SQL:我能玩出這花樣兒?

計算器

這個 SQL 語句我們在開發中會經常用到。小美,你覺得難嗎?

這個太實用了,以後計算器和日曆都可以省了,哈哈哈。

是的,其實我們剛剛已經不經意的學習了 SQL 語言增刪改查中的 查 操作了。接下來,我要介紹一個新的物件:表 :是相關的資料項的集合,它由列和行組成。通俗的講,資料庫相當於圖書館,表就類似於其中的一個個書架,表資料就類似於一本本書。我們查詢資料庫表的資料,就好比我們進入圖書館去找一本喜歡的書。我這麼說,你能理解嗎?

查 的基本語法:select * from 表名;

可以可以,這個比喻我一下子就聽懂了,原來資料庫查詢是這樣的,那表是怎麼建立的呢?

不要著急,先來介紹一下資料庫中最常用的 3 個數據型別:NUMBER,VARCHAR2,DATE,分別為數字型,字元型,日期型。顧名思義,即用來定義表中列欄位用來存放資料的型別。

SQL:我能玩出這花樣兒?

資料型別

嗯嗯,這個能理解,跟 java,C 好像有些相似。

嗯嗯。理解了這個,就可以開始建表了,現在來建立一個簡單的圖書館書架表。

表名為:bookshelf,有列:圖書id,圖書名稱,圖書型別,作者,入庫時間。透過上面學習的 語法,來查詢一下這張表:

SQL:我能玩出這花樣兒?

查詢圖書表

可以發現,新建的 bookshelf 表沒有任何記錄。現在,圖書館裡已經增加一個空的書架,是不是需要將書放入書架上呢?這時就需要用到

操作了。

嗯嗯,很形象,感覺自己就像個圖書管理員一樣,哈哈哈。

哈哈,沒錯,我們資料庫管理員跟圖書管理員可以說是異曲同工。好了,繼續說放書吧,現在假設有一本書《飄》,作者:瑪格麗特·米切爾,型別:長篇小說。現在透過 將這本書放入書架上:

的基本語法:

SQL:我能玩出這花樣兒?

插入資料

透過 sql 查詢發現,這本書《飄》已經放入了書架上,可供大家借用和檢視。

太形象了,那如果我把書的作者寫錯了,那怎麼辦呢?再插入一條嗎?

這個問題問得很好,因為人為的操作總會存在誤差,因此提出了 改 和 刪 兩種操作。

的基本語法:

的基本語法:

現在來模擬一下場景:

1、修改作者名:

修改作者名

2、下架圖書:

SQL:我能玩出這花樣兒?

圖書下架

透過以上兩個場景,演示了

兩種操作。

lucifer,你講得很明瞭,我現在已經懂了增刪改查四種操作了,迫不及待想要動手開始操作了!

小美,先別急,你沒有發現一個嚴重的問題嗎?如果書架上不止一本書呢?那你怎麼對指定的那本書進行操作呢?有思考過嗎?

對哦,上面都是演示的一本書,如果有多本書,是不是也有對應的操作可以來篩選呢?

沒錯,很聰明。現在隆重有請 WHERE 查詢條件登場。正如上面所說,WHERE 子句用於提取那些滿足指定條件的記錄。

SQL:我能玩出這花樣兒?

舉個栗子

先上架 3 本書:

插入資料

檢視《傾城之戀》:

檢視《傾城之戀》

更新《飄》:

更新《飄》

刪除《從你的全世界路過》:

SQL:我能玩出這花樣兒?

刪除《從你的全世界路過》

透過上面的幾個栗子,應該能很好地理解

WHERE

查詢條件的使用了。

懂了懂了,lucifer,我現在是不是可以去開發了?好想練練手啊!!!

嗯。現在只能說是入門了,會簡單的增刪改查是資料庫開發的第一步。

好的好的。有問題了我再繼續問你,謝謝lucifer!!!Thanks( ω ) 。

另外,再跟大家分享三個一句 SQL 畫圖的趣味小玩意兒:

五角星:

SQL:我能玩出這花樣兒?

五角星

調整其中數字 5, 你還可以輸出 7 角星、9 角星。

奧運五環:

SQL:我能玩出這花樣兒?

奧運五環

列印當月日曆:

SQL:我能玩出這花樣兒?

列印日曆