SQL 基礎知識梳理

數據分析那些事
數據分析那些事
6 min readAug 4, 2021

目錄

﹣什麼是資料庫
﹣資料庫結構
﹣SQL 概要
﹣創建資料庫與表
﹣刪除和更新表

一、什麼是資料庫

1.資料庫(Database,DB):將大量資料保存起來,通過計算機加工而成的可以進行高效訪問的資料集合。如:大型-銀行存儲的信息,小型-電話簿。

2.資料庫管理系統(Batabase Management System,DBMS):用來管理資料庫的計算機系統。

3.關係型資料庫(Relational Database,RDB):目前應用最廣泛的資料庫。

4.結構化查詢語言(Structured Query Language,SQL):專門用於操作 RDB。

5.常見的 5 種關係型資料庫管理系統(Relational Database Management System,RDBMS):

① Oracle Database:甲骨文公司

② SQL Server:微軟公司

③ DB2:IBM 公司

④ PostgreSQL:開源

⑤ MySQL:開源

二、資料庫結構

1.服務器:用於接收並處理其它程序發出的請求的程序(軟件),或者是安裝此類程序的設備(計算機)。

2.客戶端:向服務器發出請求的程序(軟件),或者是安裝此類程序的設備(計算機)。

3.表(table):類似 Excel,由列和行組成的二維表。

4.字段:表的行(垂直方向)。

5.記錄:表的列(水平方向)。【注意】關係資料庫必須以行為單位進行數據讀寫。

6.單元格:列行交匯處。【注意】與 Excel 不同,一個單元格只能輸入一個數據。

三、SQL 概要

1.SQL 語句:用關鍵字、表名和列名等組合而成的一條語句。

2.3 種 SQL 語句種類:

(1)DDL(Data Definition Language,數據定義語言):創建、刪除或修改資料庫以及資料庫中的表等對象。

① CREATE:創建資料庫和表等對象

② DROP:刪除資料庫和表等對象

③ ALTER:修改資料庫和表等對象

(2)DML(Data Manipulation Language,數據操作語言):查詢或修改表中的記錄。

① SELECT:查詢表中的數據

② INSERT:向表中插入數據

③ UPDATE:修改表中的數據

④ DELETE:刪除表中的數據

(3)DCL(Data Control Language,數據控制語言):確認或取消對資料庫中的數據變更的執行操作,以及對用戶的操作資料庫中的對象權限進行設定。

① COMMIT:確認對資料庫中的數據進行的變更

② ROLLBACK:取消對資料庫中的數據進行的變更

③ GRANT:賦予用戶的操作權限

④ REVOKE:取消用戶的操作權限

【備註】DML 使用最頻繁。

3.SQL 語句書寫規範:

① 以分號(;)結尾;

② 大小寫不敏感,不區分關鍵字的大小寫;

【注意】插入到表中的數據是區分大小寫的,如“HI”、“Hi”和“hi”都不同。

③ 該系列隨筆將採用“關鍵字大寫,表名和列名的首字母大寫”的格式。

④ 單詞使用半角空格或換行符隔開

4.常數的書寫方式:

字符串、日期:用單引號括起來(’),如’Hello’,’2016–09–24'。

數字:直接書寫,不用加單引號,如:5。

四、創建資料庫與表

1.資料庫創建:

語法:CREATE DATABASE <資料庫名稱>

2.表的創建

語法:

CREATE TABLE 表名稱

(

行名稱1 數據類型 <約束1>,

行名稱2 數據類型 <約束2>,

行名稱3 數據類型 <約束3>,

….

)

創建名為 Users 的表

3.命名規則:

① 只能使用半角英文字母、數字、下劃線(_)作為資料庫、表和行的名稱;

② 規範要求命名以半角英文字符開頭;

③ 名稱不能重複。

4.數據類型的指定:聲明該列的數據類型,是一種約束。

5.數據類型介紹:

① INTEGER:整型,意味不能存儲小數;

② CHAR:字符串型,如 CHAR(10)和 CHAR(100)中的括號表名該行可以存儲的字符串的最大長度。它是“定長字符串”,如 CHAR(8) 表示在行中插入 ‘abc’ 時會自動保存成 ‘abc ‘(後面5個半角空格)的形式;

③ VARCHAR:字符串型,類似 CHAR,不同的是它是 “可變長字符串”,如 VARCHAR(8) 在插入 ‘abc’,保存的就是字符串 ‘abc’;

④ DATE:日期類型;

… …

6.約束:

① 非空約束:NULL 是空白(無記錄)的意思的關鍵字,NOT NULL 表示必須輸入的約束。

② 主鍵約束:主鍵是可以確定一行數據的行,一般通過它取特定列的數據,它是唯一的,不允許重複。

… …

五、更新和刪除表

1.刪除表

語法:DROP TABLE <表名>

【注意】被刪的表,無法恢復。

2.更新表

(1)添加行

語法:ALTER TABLE <表名> ADD <行名> <類型>;

在 USERS 中添加名為 CJSJ 類型為 VARCHAR(100) 的行

(2)刪除行

語法:ALTER TABLE <表名> DROP COLUMN <行名>;

刪除 USERS 表中名為 CJSJ 的行

【注意】表定義變更後無法恢復。

備註

這裡的語句採用 SQL Server 進行驗證。

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

我是「數據分析那些事」。常年分享數據分析乾貨,不定期分享好用的職場技能工具。各位也可以關注我的Facebook,按讚我的臉書並私訊「10」,送你十週入門數據分析電子書唷!期待你與我互動起來~

文章推薦

統計學中資料分析方法彙總!

16類好看的視覺化圖表&設計原則,圖表控果斷收藏!

強烈推薦!入門大數據分析必看的知識點總結,適合零基礎學習

--

--

數據分析那些事
數據分析那些事

這是一個專注於數據分析職場的內容部落格,聚焦一批數據分析愛好者,在這裡,我會分享數據分析相關知識點推送、(工具/書籍)等推薦、職場心得、熱點資訊剖析以及資源大盤點,希望同樣熱愛數據的我們一同進步! 臉書會有更多互動喔:https://www.facebook.com/shujvfenxi/