日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

sql怎么撤回update_零基础快速自学SQL,2天足矣!

發(fā)布時(shí)間:2025/3/15 数据库 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 sql怎么撤回update_零基础快速自学SQL,2天足矣! 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

此文是《10周入門數(shù)據(jù)分析》系列的第6篇。

想了解學(xué)習(xí)路線,可以先行閱讀“ 學(xué)習(xí)計(jì)劃 | 10周入門數(shù)據(jù)分析 ”


上一篇分享了數(shù)據(jù)庫的基礎(chǔ)知識(shí),以及如何安裝數(shù)據(jù)庫,今天這篇分享數(shù)據(jù)庫操作和SQL。

SQL全稱是 Structured Query Language,翻譯后就是結(jié)構(gòu)化查詢語言,是一種數(shù)據(jù)庫查詢和程序設(shè)計(jì)語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng)。

至于 ORACLE、DB2、Sybase、SQLServer、MySQL、MS Access等都是數(shù)據(jù)庫,雖然語法上有差異,但是基本上都是大同小異。作為一名數(shù)據(jù)從業(yè)者,雖然市面上有很多很智能很自助的數(shù)據(jù)工具,甚至有的拖拖拽拽就能實(shí)現(xiàn),但作為一名報(bào)表工程師、數(shù)據(jù)分析師,不懂一點(diǎn)SQL是絕逼不行的。

之前很多文章對(duì)于SQL都一筆帶過,輕描帶寫,略忽視這項(xiàng)基本技能的重要性,所以今天就來講講如何學(xué)習(xí)SQL。

市面上都大量的書籍和教學(xué)視頻,這里就幫大家提煉核心要點(diǎn),給個(gè)學(xué)習(xí)方向。

本次的文章主要從以下幾個(gè)方面進(jìn)行說明,大家可以參考著學(xué)習(xí)。

  • SQL快速學(xué)習(xí)路線
  • 數(shù)據(jù)庫表基礎(chǔ)操作
  • SQL基礎(chǔ)語句
  • SQL高級(jí)語句

SQL快速學(xué)習(xí)路線

零基礎(chǔ)自學(xué)SQL時(shí)通常會(huì)遇到2個(gè)坑:

一坑:學(xué)習(xí)之前先安裝數(shù)據(jù)庫軟件,可以是SQL Sever,也可以是MySQL。對(duì)于新人而言,安裝數(shù)據(jù)庫軟件挺費(fèi)時(shí)間,坑太多。我剛上大學(xué)那會(huì)要求2天內(nèi)自學(xué)SQL,結(jié)果我花了1天時(shí)間安裝SQL Sever。前一篇文章分享了MySQL的安裝教程,剛開始學(xué)用不上太龐雜的功能,所以推薦小而美的MySQL,SQL Sever也是可以的。

二坑:一上來就背SQL語法。我看過太多新人在那邊吭哧吭哧做筆記背SQL,個(gè)人不贊成這種學(xué)法,不實(shí)踐記不住。就和Excel函數(shù)一樣,理解含義和如何使用,關(guān)鍵時(shí)候去w3school查詢一下就行了,以后用得多了自然就掌握了。(后臺(tái)回復(fù)關(guān)鍵詞“SQL”獲得)

SQL學(xué)習(xí)路線

1、下載安裝MySQL,或者安裝軟件phpstudy(這個(gè)軟件自帶了mysql數(shù)據(jù)庫,而且安裝啟動(dòng)方便)。

2、我這里用的是phpstudy,打開phpstudy后,點(diǎn)擊下圖中的啟動(dòng),點(diǎn)擊后數(shù)據(jù)庫服務(wù)就會(huì)啟動(dòng)了。

3、下載安裝Navicat軟件

這個(gè)軟件可以輕松連接數(shù)據(jù)庫,我們可以在這個(gè)軟件中練習(xí)學(xué)習(xí)SQL語法

4、使用Navicat建立數(shù)據(jù)庫連接

點(diǎn)擊文件——新建連接,連接名隨便填寫,比如我寫的是“本地”。主機(jī)名、端口都不需要修改,用戶名和密碼都是root(因?yàn)槲覀儼惭b的phpstudy里的mysql默認(rèn)用戶名密碼就是root),點(diǎn)擊連接測(cè)試顯示為成功后點(diǎn)確定保存。

以后再次訪問時(shí),雙擊即可。

5、下載習(xí)題進(jìn)行學(xué)習(xí),內(nèi)含習(xí)題需要用到的數(shù)據(jù)表。

6、導(dǎo)入第5步中下載的數(shù)據(jù)表。(后臺(tái)回復(fù)關(guān)鍵詞“SQL”獲得)

右擊第4步中的“本地”,新建一個(gè)數(shù)據(jù)庫test1,雙擊打開新建的數(shù)據(jù)庫(打開后顏色是綠色)。

拖拽剛才下載的數(shù)據(jù)表文件(sqltest1.sql)到test1上面。

這時(shí)會(huì)出現(xiàn)上述彈窗,點(diǎn)擊開始,等待導(dǎo)入完成后,點(diǎn)擊關(guān)閉

在左側(cè)空白處右擊,選擇“刷新”,即可看到剛才導(dǎo)入的數(shù)據(jù)表了。

7、打開sql語法編輯器

如下圖點(diǎn)擊查詢——新建查詢,在空白處輸入sql語法,點(diǎn)擊運(yùn)行,如果輸入錯(cuò)誤會(huì)有報(bào)錯(cuò),輸入正確則會(huì)返回查詢內(nèi)容。

8、邊做邊學(xué)

打開第一部分習(xí)題,邊做邊學(xué),通過查詢w3c的sql語法手冊(cè)完成

9、鞏固練習(xí)

嘗試不看sql語法手冊(cè),獨(dú)立完成第二部分習(xí)題。

以上是sql的學(xué)習(xí)路徑,接下來是sql語句的學(xué)習(xí),掌握使用場(chǎng)景和含義,具體語法就不做解釋了,大家參考w3c的sql語法手冊(cè)學(xué)習(xí)。這里我歸了下類,挑重點(diǎn)講。

數(shù)據(jù)庫表基礎(chǔ)操作

首先數(shù)據(jù)庫表必掌握的基礎(chǔ)操作,建表、刪表、往表里增數(shù)據(jù)、往表里刪數(shù)據(jù)以及最重要的取數(shù)等等。

1、CREATE TABLE(建表)

怎么著也得先建立表~

當(dāng)你建表成功后,發(fā)現(xiàn)忘記添加主鍵,或者忘記添加外鍵,莫著急。使用以下咒語即可:

建好的表如下:

emp表

orders表

2、INSERT(插入)

向表中插入數(shù)據(jù)

插入數(shù)據(jù)后的emp表

插入數(shù)據(jù)后的orders表

3、UPDATE(更新)

4、DELETE(刪除)

在使用delete刪除emp表中數(shù)據(jù)時(shí),要注意該表與其他表是否存在關(guān)聯(lián)關(guān)系,比如:外鍵。emp表id是表orders的外鍵,如果要?jiǎng)h除emp表中的id,得先刪除orders表中的外鍵。

5、DISTINCT(去重)

在表中,可能會(huì)包含重復(fù)值,這并不成問題。不過,有時(shí)你也許希望僅僅返回唯一不同的值。使用distinct關(guān)鍵字進(jìn)行處理,用于返回唯一不同的值。

注意:distinct關(guān)鍵字是去重!去重!去重!*把列中的重復(fù)值去掉!

曾經(jīng)我在筆試的時(shí)候,有道SQL考題:請(qǐng)寫出表中所有重復(fù)的name的所有數(shù)據(jù)。我當(dāng)時(shí)沒反應(yīng)過來,直接就用了distinct關(guān)鍵字,后來就....

6、Select(取數(shù))

SELECT 語句用于從表中選取數(shù)據(jù),結(jié)果被存儲(chǔ)在一個(gè)結(jié)果表中(稱為結(jié)果集)。這是以后最常用的操作,占據(jù)你90%。

SQL SELECT 語法

SELECT 列名稱 FROM 表名稱

以及:

SELECT * FROM 表名稱

比如需獲取名為 "LastName" 和 "FirstName" 的列的內(nèi)容(從名為 "Persons" 的數(shù)據(jù)庫表),請(qǐng)使用類似這樣的 SELECT 語句:

SELECT LastName,FirstName FROM Persons

SELECT通常結(jié)合其他函數(shù)和語法使用。

SQL基礎(chǔ)語句

在實(shí)際的SQL使用中,肯定會(huì)涉及到有關(guān)函數(shù)的使用,這里簡(jiǎn)單介紹幾種初學(xué)時(shí)必學(xué)的函數(shù)類型。

1、AVG()

AVG 函數(shù)返回?cái)?shù)值列的平均值。NULL 值不包括在計(jì)算中。

2、COUNT()

COUNT( ) 函數(shù)用于返回匹配指定條件的行數(shù)。

3、MAX()

MAX函數(shù)返回指定列的最大值,NULL值不包括在計(jì)算中

4、MIN()

MIN函數(shù)返回的指定列的最小值,NULL值不包括在計(jì)算中

5、SUM()

SUM函數(shù)返回指定列的總數(shù)

6、ROUND()

ROUND 函數(shù)用于把數(shù)值字段舍入為指定的小數(shù)位數(shù)

round函數(shù)需要的參數(shù)

7、FORMAT()

FORMAT 函數(shù)用于對(duì)字段的顯示進(jìn)行格式化

format函數(shù)需要的參數(shù)

SQL高級(jí)語句

這一部分的內(nèi)容是通常用到的,屬于最開始學(xué)習(xí)SQL知識(shí)時(shí)必須要熟練的,我這里大致列出幾項(xiàng)。

1、LIMIT

2、LIKE

一般配合where使用,搜索條件中的指定模式

在上面我們可以看到,通配符“%”的使用方法,所以通配符必須要配合like 運(yùn)算符一塊使用。

通配符還有以下幾種:

3、IN

從字面意思就可以知道它的作用是什么了

4、JOIN

聯(lián)表運(yùn)算符JOIN,該運(yùn)算符是用于將兩個(gè)或者兩個(gè)以上的表進(jìn)行關(guān)聯(lián),并從這些表中查詢數(shù)據(jù)。

對(duì)于聯(lián)表來說,通過使用主鍵(primary key)和外鍵(foreign key)也可以建立連接。

除了上述直接使用條件關(guān)聯(lián),下面我們可以用可讀性更高的INNER JOIN來寫

還有其他幾種方連接方式(外連接):

  • LEFT JOIN:就算右表中沒有匹配,也從左表返回所有的行
  • RIGHT JOIN:即使左表沒有匹配,也行右表返回所有的行
  • FULL JOIN:只要有一個(gè)表存在著匹配,就返回行

5、ALTER

穿插介紹一下alter,前面的例子中已經(jīng)包含了幾種alter使用方法。

6、UNION

UNION 操作符用于合并兩個(gè)或多個(gè) SELECT 語句的結(jié)果集。

請(qǐng)注意,UNION 內(nèi)部的 SELECT 語句必須擁有相同數(shù)量的列。列也必須擁有相似的數(shù)據(jù)類型。同時(shí),每條 SELECT 語句中的列的順序必須相同。

上面引用的意思就是:道不同,不相為謀!

UNION和UNION ALL命令幾乎是等效的,不過加了“ALL”,就會(huì)列出所有的值。

注意:因?yàn)槠湟簿哂小拔ㄒ恍浴?#xff0c;容易和PRIMARY KEY混淆。面試或筆試常考兩者的不同,在這里說明一下:

與PRIMARY KEY不同的是,每個(gè)表可以有多個(gè) UNIQUE 約束,但是每個(gè)表只能有一個(gè) PRIMARY KEY 約束。

為表添加UNION,這里給出使用的SQL語法。

7、AUTO-INCREMENT(自增)

在運(yùn)用中,我們希望在每添加一條數(shù)據(jù)后,自動(dòng)的為我們的主鍵創(chuàng)建值。

8、ORDER BY

在前面中已經(jīng)使用到了有關(guān)order by的SQL語句,order by該語句用于對(duì)結(jié)果集進(jìn)行排序,默認(rèn)是進(jìn)行ASC正序排序(從小到大)。

排序的兩種方式:

  • ASC:升序(從小到大)
  • DESC:降序(從大到小)

舉栗:

ASC排序

對(duì)于DESC排序,這里就不進(jìn)行舉例了,大家可以自己寫SQL試一下。

9、GROUP BY

通常配合合計(jì)函數(shù)使用,根據(jù)一個(gè)或多個(gè)列對(duì)結(jié)果集進(jìn)行分組。

具體的用法在介紹函數(shù)時(shí)會(huì)涉及到。

10、HAVING

在上面的例子中,我們使用where關(guān)鍵字來增加查詢條件,這里增加having字句是因?yàn)?#xff0c;where關(guān)鍵字無法與合計(jì)函數(shù)一起使用

同樣引用上面的SQL語句。

具體的用法在介紹函數(shù)時(shí)會(huì)涉及到。

11、DEFAULT

DEFAULT約束用于向列中插入默認(rèn)值。


本次文章中寫的相關(guān)知識(shí)點(diǎn)是我以前在學(xué)習(xí)中隨手記錄的,對(duì)一些SQL大牛來說,這些已經(jīng)是耳熟能詳了。會(huì)不會(huì)讓你們產(chǎn)生一種灌水的錯(cuò)覺????哈哈~


此文是《10周入門數(shù)據(jù)分析》系列的第6篇。

想了解學(xué)習(xí)路線,可以先行閱讀“ 學(xué)習(xí)計(jì)劃 | 10周入門數(shù)據(jù)分析 ”

公眾號(hào)上已更新到第13篇,歡迎前往關(guān)注~

總結(jié)

以上是生活随笔為你收集整理的sql怎么撤回update_零基础快速自学SQL,2天足矣!的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。