SQL線上練習

2022-09-10 00:15:32 字數 2513 閱讀 7569

語法手冊

課程列表

高階計畫

sql lesson 0: 讓我給sql做個自我介紹

xuesql.cn,乙個適合小白學sql的**,我們會由淺入深的介紹所有有關sql的知識, 每乙個章節是一組相關的sql知識點; 並且會配備一組動手練習任務。

sql, 全稱為structured query language(結構化查詢語言)。 要講sql就繞不開database(資料庫), 平時所說的資料庫,一般就是指的relational database(關係型資料庫).

大家知道資料庫是用來儲存大量資料的一種軟體,那麼sql呢是用來運算元據裡的資料,具體來說sql可以做資料查詢,資料更新,寫入資料等等。

小貼士:有哪些流行的資料庫?

大家應該或多或少聽說過一些資料庫比如sqlite,mysql,postgres,oraclemicrosoft sql server. 這幾個資料庫(可以理解為軟體)是目前比較流行的一些資料庫。所有這些資料庫都支援標準的sql,換句話說,你學會了sql就可以對這些資料庫做資料操作了! 當然上面的每一種資料庫都有自己的特性和適用範圍(想象一下你家有 不同尺寸的盤子).

在學習sql語法之前有必要解釋一下什麼是關係型資料庫(relational databases)?資料庫由若干張(table)組成,這裡說的資料table很像excel裡的表; 正如excel裡的**,table也是由行(rows)列(columns)組成

乙個table儲存乙個類別的資料,每一行是一條資料,每一列是這種資料的乙個屬性; table就像乙個二維的**,列(columns)是有限固定的,行(rows)是無限不固定的

舉個例子, 比如我們資料庫裡有一張表(table). 是用來儲存世界上所有的狗,每一行(rows)是一條狗的資訊。那麼你會在這個狗table裡儲存 哪些狗的屬性列(columns)呢?比如 編號,名字,體重,身高,品種,年齡,毛髮顏色?。讓我們來看一下這張表,暫且就叫表 dog吧!

table(表): dog

id# name(名字)

# weight(體重)

# height (身高)

# type (品種)

# age (月齡)

# color (膚色)

1mike328

吉娃娃10白2

sala

6.540

柴犬15黃3

黑獅21.5

45藏獒26黑

4大聖1542

牧羊犬20黃5

boy5.5

24蝴蝶犬6白

......

......

......

...上面就是乙個dog表的簡單展示,像這樣乙個狗資料庫裡,除了這張狗(dog)表,還可能存在其他的表,比如有一張表是存狗品種資訊, 另外有一張表是存狗主人資訊的 ...

我們學習sql, 其實最後目的就是在類似這張dog表資料基礎上, 可以通過sql來回答諸如以下的一類問題: "現在全世界名字叫 'mike'的狗有幾條?", 或者 "有多少條狗的毛髮是 紅色的?", 等等。 通過sql我們可以方便的去獲取,統計這些資訊,在接下來的更多章節中你會有更深的體會.

所有練習都會有表(table)的資料展示,在表下方有乙個可以輸入 sql(sql語句) 的編輯器,您需要理解右側的任務列表並寫出正確的sql . 當然,您也可以直接在編輯器裡輸入 其他的sql,每次輸入sql都會立即執行,並把結果顯示在表資料的位置!

第一次的練習很簡單,您只需要按照任務列表裡的sql,在編輯器裡抄一遍即可(抄完sql注意下**裡的資料有何變化)。這個練習主要是希望你通過互動對sql有乙個初步映像. 那讓我們趕緊開始玩吧 ..

注意我們練習中的表不是狗表,而是一張儲存了電影資訊(movies)的表

table(表): movies 全表檢視

提示資訊

sql為空或資料為空

--請輸入sql

重置練習 do it — 請完成如下任務

【初體驗】請輸入如下sql你將看到4條電影(切記先清空資料框且出錯要耐心比對):

select title,director from movies where id < 5

【初體驗】輸入如下sql你將看到電影總條數:

select count(*) from movies

【初體驗】sql可以直接做計算,下面的sql計算1+1的和,請輸入:

select 1+1

我不會做求助!求助!

下一節 – sql lesson 1: select 查詢 101

線上慢SQL排查

mysql排查線上資料庫問題,經常會用到 show processlist和show full processlist這兩條命令 processlist命令的輸出結果顯示了有哪些執行緒在執行,不僅可以檢視當前所有的連線數,還可以檢視當前的連線狀態幫助識別出有問題的查詢語句等。如果是root帳號,能看...

SQL語句練習

建立一張表,記錄 呼叫員的工作流水,記錄呼叫員編號,對方號碼,通話開始時間,結束時間。建表,插資料等都自己寫出sql 要求 輸出所有資料中通話時間最長的5條記錄。輸出所有資料中撥打長途號碼 對方號碼以0開頭 的總時長 輸出本月通話時長最多的前三個呼叫員的編號 輸出本月撥打 次數最多的前三個呼叫員的編...

SQL 語句練習

mysql select from persons limit 5 oracle select from persons where rownum 5 select from persons where name like l select from persons where name not l...