招聘要求裡的「熟練使用 SQL」 你熟練麼?
摘要:SQL 常用命令總結。
作者 | 愛德寶器
來源 | 資料管道
當你看一份資料分析崗位的招聘要求時,通常都會有這麼一條:「熟練使用SQL」,你熟練麼?不熟練的話,就來複習一下。
最基本的幾個問題,SQL是什麼?資料庫是什麼?RDBMS又是什麼?什麼叫表?
資料庫(Database):按照資料結構來組織、儲存和管理資料的倉庫。
RDBMS:(Relational Database Management System)
關聯式資料庫管理系統,儲存和操作關聯式資料庫表中排列的資料的軟體。
SQL:Structured Query Lanuage(結構化查詢語言),更詳細地說,SQL 是一種資料庫查詢和程式設計語言,用於存取資料以及查詢、更新和管理關聯式資料庫系統,同時也是資料庫指令碼檔案的副檔名。
表:按列和行排列的一組資料。列表示儲存資料的特徵,行表示實際的資料條目。
瞭解完以上關於資料庫的一些基本概念之後,下面就來看看 SQL精簡版複習大綱。
下面挨個來介紹一下。
1 資料庫查詢語言
1.1、如何選擇多列
1#語法
2SELECT <Column List>FROM <Table Name>WHERE <Search Condition>
3
4# 例子
5SELECT FirstName, LastName, OrderDateFROM Orders WHERE OrderDate > '10/10/2010'
1.2、如何選擇某一列並去重(重點)
1#語法
2SELECT DISTINCT <Column_name>FROM <Table Name>
3
4#例子
5SELECT DISTINCT FirstName FROM Orders
1.3、如何從第一行開始選擇一共五行資料?
1#語法
2SELECT <col_name >FROM table_name limt 5 offset 1;
3
4#例子
5SELECT FirstName FROM Orders limt 5 offset 1;
1.4、如何按照指定方向(升、降)排序選擇資料?
1#語法
2SELECT co_name1,col_name2 FROM table_name ORDER BY col_name1 DESC,col_name2 ASC
3
4#例子
5SELECT ,FirstNameFROM Orders ORDER BY OrderDate DESC
1.5、常見的一些過濾選擇有哪些。(重點)
1#範圍內檢查
2SELECT col_name FROM table_name WHERE col_name BETEWEEN 5 AND 10;
3
4#空值檢查
5SELECT col_name FROM table_name WHERE col_name IS null;
6
7# in操作符
8SELECT col_name FROM table_name WHERE col_name IN (....);
9
10# NOT操作符
11SELECT col_name FROM table_name WHERE NOT (條件);
12
13#AND 和 OR 注意優先順序 and 優先順序高於or
14SELECT col_name FROM table_name WHERE (condi_1 OR condi_2) AND condi_3;
15
16#第五部分使用萬用字元進行過濾
17SELECT col_name FROM table_name WHERE col_name like '..%..';SELECT col_name FROM table_name WHERE col_name like '.._..';SELECT col_name FROM table_name WHERE col_name like '[]%';
1.5、如何分組並按條件選擇資料?(重點)
1#語法
2SELECT <Column List>, <Aggregate Function>(<Column Name>)FROM <Table Name>WHERE <Search Condition>GROUP BY <Column List>
3
4#例子
5SELECT LastName, SUM(OrderValue)FROM OrdersWHERE OrderDate > '10/10/2010'GROUP BY LastName
6
7注意點: GROUP BY 後面也可以接條件。
8WHERE 語句和HAVING配合的使用。WHERE在HAVING之前.
9WHERE 過濾針對的是行,HAVING過濾針對的是組。
1.6、分組和排序的順序是什麼?(重點)
1/*
2SELECR
3FROM
4WHERE
5GROUP BY
6HAVING
7ORDER BY
8*/
9SELECT col_name FROM table_name
10WHERE <condition_1>
11GROUP BY <col_name>
12HAVING <condition_2>
13ORDER BY <col_name>
1.7、如何使用子查詢?(重點)
1SELECT col_name FROM table_name WHERE col_name = (SELECT col_name FROM table_name WHERE .... );
1.8、表的聯結查詢怎麼做(非常重點!!!!一定要會!)
1#語法
2SELECT <Column List>FROM <Table1> JOIN <Table2>ON <Table1>.<Column1> = <Table2>.<Column1>、
3
4#例子
5SELECT Orders.LastName, Countries.CountryNameFROM Orders INNER JOIN Countries ONOrders.CountryID = Countries.ID
6
7除此之外還有左聯結 LEFT JOIN
8右聯結 RIGHT JOIN
9全聯結 FULL JOIN
1.9、如何使用聯合查詢
1#語法
2SELECT <Column List> FROM <Table1>UNIONSELECT <Column List> FROM <Table2>
3
4#例子
5SELECT <Column List> FROM <Table1>UNIONSELECT <Column List> FROM <Table2>
2 資料庫操作語言
2.1 INSERT(插入)
1#語法
2
3INSERT INTO <Table Name>(<Column List>) VALUES (<Values>)
4
5#例子
6INSERT INTO Orders(FirstName, LastName, OrderDate) VALUES('John', 'Smith', '10/10/2010')
2.2 UPDATE(更新)
1#語法
2UPDATE <Table Name>SET <Column1> = <Value1>, <Column2> = <Value2>, …WHERE <Search Condition>
3
4#例子
5UPDATE OrdersSET FirstName = 'John', LastName = 'Who' WHERE LastName='Wo'
2.3 DELETE(刪除)
1#語法
2DELETE FROM <Table Name>WHERE <Search Condition>
3
4#例子
5DELETE FROM OrdersWHERE OrderDate < '10/10/2010'
3 資料庫定義語言
3.1、CREATE (建立表)
1# 語法
2CREATE TABLE <Table Name>( Column1 DataType, Column2 DataType, Column3 DataType)
3
4# 例子
5CREATE TABLE Orders( FirstName CHAR(100), LastName CHAR(100), OrderDate DATE)
3.2、ALTER(更改表)
1#語法
2CREATE TABLE <Table Name>ADD col_name Datatype;CREATE TABLE <Table Name>DROP COLUMN <col_name>
3
4# 例子
5ALTER TABLE Vendors ADD vend_phone CHAR(20); ALTER TABLE Vendors DROP COLUMN vend_phone;
3.3 DROP (刪除表)
1#語法
2DROP TABLE table_name;
3
4#例子DROP TABLE CustCopy;
這些是最基礎的操作命令,必須得會。
/今日留言主題/
你常用 SQL 麼?
(留言格式:Dayxx:blahblah)
相關文章
- 你真的熟練使用webpack嗎?Web
- 0和1的熟練
- 愈發熟練的 CSS 技巧CSS
- linux沒熟練內容Linux
- 幾你需要熟練掌握的辦公軟體
- Git從入門到熟練掌握Git
- 熟練剖分(tree) 樹形DP
- 想要成為Java工程師,你要熟練掌握MySQLJava工程師MySql
- MySQL基礎教程---Chapter13 熟練使用事務MySqlAPT
- 一文徹底熟練掌握並使用Java的NIO操作Java
- EF:2022英語熟練度指標報告指標
- 英孚教育:2021年英語熟練度指數
- 通過10個例項小練習,快速熟練 Vue3.0 核心新特性Vue
- Java無所不能的反射在Android中需要熟練的知識Java反射Android
- 作為ui設計師,你必須要熟練的幾款設計軟體UI
- 如何熟練地配置和微調 MacBook Pro 的顯示螢幕Mac
- 超詳細mac新手教程,讓你離熟練操作mac只需十分鐘!Mac
- 30分鐘帶你熟練效能最佳化的那點兒事兒(案例說明)
- 知新 | koa框架入門到熟練第一章框架
- K8s 從懵圈到熟練-叢集伸縮原理K8S
- 2021年全球主要城市英語熟練程度(附原資料表)
- 分散式服務介面的java工程師,需要熟練具備的技能點分散式Java工程師
- K8s 從懵圈到熟練 – 映象拉取這件小事K8S
- K8s 從懵圈到熟練 – 叢集網路詳解K8S
- 2021年非洲各年齡段英語熟練程度(附原資料表)
- 2021年全球各地區平均英語熟練程度(附原資料表)
- Spring Data JPA系列2:SpringBoot整合JPA詳細教程,快速在專案中熟練使用JPASpring Boot
- Istio從懵圈到熟練:二分之一活的微服務微服務
- Istio 從懵圈到熟練:二分之一活的微服務微服務
- 資料視覺化之美:您必須熟練掌握的7個圖表視覺化
- 熟練掌握各種MQ?那面試官很可能用這道題目先摸摸你的老底!MQ面試
- hitTest和pointInside方法你真的熟嗎?IDE
- 2021年歐洲各年齡段英語熟練程度(附原資料表)
- 2021年亞洲各年齡段英語熟練程度(附原資料表)
- 2021年全球各年齡段人口英語熟練程度(附原資料表)
- 提高遊戲陪玩app開發水準,熟練掌握正規表示式遊戲APP
- 開發相親交友原始碼,需要熟練掌握的音視訊基礎知識原始碼
- 2021年拉丁美洲各年齡段英語熟練程度(附原資料表)