SQL學習過程推薦


作者:趙英銳
鏈接:https://www.zhihu.com/question/19552975/answer/138930758
來源:知乎
著作權歸作者所有,轉載請聯系作者獲得授權。

我是看了這個回答來慢慢學習的,一共用了一個月時間,走了很多彎路總結一下這一個月的努力。希望大家少走點彎路

一、基礎理論篇

目的:

1.了解建立數據庫的意義,為什么不能用excel而需要用數據庫?以及有哪些方面的應用?
2.數據庫系統在整個網站中處於一個什么位置?在數據后台如何調用數據庫的數據?
3.數據庫的應用范圍?什么時候才不得不使用數據庫?什么時候數據庫也不靈了?
(大概10萬條就可以使用了,千萬級的就到極限了,這玩意誰知道了)
4.表與表之間存在着怎樣的邏輯?理解實體、關系、主鍵、外鍵。

推薦資料:

數據庫原理(第5版)

這本書講的比較通俗易懂,很快就能理解數據庫是怎么回事。其次再看看知乎里面關於數據庫的性能評價。

二、基礎操作篇

目的:

1.學會操作一些基本的select的操作:

重點注意:
where和having的區別,
join需要注意用on,
like、=、is null的區別 還有null與空格的區別
order by的局限
group by如何在count等命令下分組,
mid如何正向反向查詢字符串位置

基本做到給你一堆數據,你可以查到你想要的

2.了解索引,知道如何建立索引,應用索引

3.了解數據類型,知道如何給各個數據建立對應的模型(兄弟連視頻教學講的比較明白)

重點了解:

char與varchar的區別
tinyint、smallint的范圍
float與double的區別
date相關類型的輸入條件與輸出效果。

推薦資料:

w3school
鏈接: SQL CREATE TABLE 語句

sql執行順序
sql執行順序 - qanholas - 博客園

數據庫系統概論第四版

w3school介紹了一些基本的操作指令,淺顯易懂,但是遠遠不夠,需要再看看數據庫系統概論第四版的第三章和第九章作為補充。
對了,安裝也是個事,看附件吧。

三、練習篇

推薦:

SQL查詢語句練習題27道 - friendan的專欄 - 博客頻道 - CSDN.NET

sql 經典試題

先做前面的,不會的再到網上查,后面的確實比較難,媽的,我就做反了。

四、優化篇

目的

數據庫做的好壞,主要是看執行效率,別人查詢需要掃描20萬的數據,而你只需要掃描5000,那你就是牛逼。
不然就算你會算,但是卡的半死也是不行的。

推薦:

sql執行順序
sql執行順序 - qanholas - 博客園

數據庫系統概論(第四版)第九章

五、高階段語句掌握

case when then else end

個人認為性價比最高 對於分組查詢非常有用。
例如你想要查各個時間段各數據出現的次數,你只有07:28這樣的時間,而你需要的是07:00~08:00這樣的時間段,這時就需要case來轉化

SQL中的case when then else end用法

explain

此函數可以看到查詢函數用到的索引等信息。用法很簡單:explain+sql 查詢語句

SQL語句優化-explain分析問題-nba76ers-ChinaUnix博客

weekday

將日期轉化為星期數 星期日就是6,星期一就是0

MySQL weekday()函數

floor、round、trunc

數值取整 floor是取整數部分,而round是四舍五入,trunc是取x位小數

SQL中的取整函數FLOOR、ROUND、CEIL、TRUNC、SIGN_鄭來軼_新浪博客

row_number()over

做排行榜的函數

SQL ROW_NUMBER() OVER函數的基本用法用法

convert

數據類型轉換

substr和mid

字符串截取

SQL函數:substr - 冰凝的日志 - 網易博客


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM