標籤:

SQL學習記錄

年前,通過優達學院學數據分析入門有段時間了,馬上課程就要到期了,還沒學完,學費還要還花唄。深感遺憾。用這幾天的時間總結下學習情況,學過的盡量學會並總結。

1.SQL:意思是一門結構化查詢語言,是Strutured Query Language的縮寫。該語言容易理解,操作靈活深受數據初學者和數據專家喜愛。

語句 比較基本和常用的有一下語句

a. 語句SELECT :用於查詢要返回的列,如查詢 id 和name 中間要用逗號隔開,如查詢所有列用『』*『』; FROM :用於在哪個表格查詢,注意,要查詢的這個表格要有列。

b. LIMIT 用於返回多少列。加入表格裡面有10000條數據,而你只需要10條數據,就可以用LIMIT返回你需要的數據

c. ORDER BY語句,主要是對對數據排序,可以多列從左到右排序,也可逆序(後面加DESC,用於逆序)。位置在FROM之後,LIMIT之前。

舉例:SELECT *

FROM orders

ORDER BY occurred_at DESC, total_amt_usd DESC

LIMIT 5;

d. WHERE語句很像Excel裡面的篩選功能。能夠對需要的信息直接查詢也可以和非數字數據一起使用。位置在ORDER BY之前。

舉例:SELECT name, website, primary_poc

FROM accounts

WHERE name = Exxon Mobil;

e.算術運算,常見運算包括+(加法),-(減法),*(乘法),/(除法)可以用派生列

舉例:SELECT id, account_id, standard_amt_usd/standard_qty AS unit_price

FROM orders

LIMIT 10;

f.LIKE 語句,有點像模糊查找。一般和通配符『 % 』連用。

舉例:SELECT name

FROM accounts

WHERE name LIKE C%;

g.IN 語句,查找比較精確。舉例:SELECT name, primary_poc, sales_rep_id

FROM accounts

WHERE name IN (Walmart, Target, Nordstrom);

h.NOT 語句,可以和LIKE或者IN語句一起使用,結果會反轉。舉例:SELECT name, primary_poc, sales_rep_id

FROM accounts

WHERE name NOT IN (Walmart, Target, Nordstrom);

i. AND和BETWEEN語句。AND 運算符用於 WHERE 語句中,用於一次考慮多個邏輯子句。 使用 AND 連接一個新的語句時,需要指定你感興趣的列。可以同時連接儘可能多的考慮語句。 這個運算符可用於我們迄今為止所學習到的所有運算,包括算術運算符(+*-/),可以使用 AND 運算符將 LIKEINNOT 邏輯連接到一起。

有時使用 BETWEEN 比使用 AND 使語句更清楚一些。特別是在 AND 語句的不同部分使用相同的列時,就可以使語句比較清晰。 在上一個視頻中,我們可能已經使用了 BETWEEN。舉例:WHERE column BETWEEN 6 AND 10

舉例:SELECT name

FROM accounts

WHERE name NOT LIKE C% AND name LIKE %s;

j. OR語句。與 AND 運算符類似,OR 運算符可以組合多個語句。 使用 OR 連接新的語句時,需要指定你感興趣的列。可以同時連接儘可能多的考慮語句。 這個運算符可用於我們迄今為止所學習到的所有運算,包括算術運算符(+*-/),可以使用 OR 運算符將 LIKEINNOTANDBETWEEN邏輯連接到一起。

舉例:SELECT *

FROM accounts

WHERE (name LIKE C% OR name LIKE W%)

AND ((primary_poc LIKE %ana% OR primary_poc LIKE %Ana%)

AND primary_poc NOT LIKE %eana%);

2.重要提示:SQL不區分大小寫,但是根據慣例我們會把命令語句大寫,其他小寫。語句中不要有空格。整個查詢中語句順序很重要。舉例:SELECT col1, col2

FROM table1

WHERE col3 > 5 AND col4 LIKE %os%

ORDER BY col5

LIMIT 10;

3.移動平均值,移動平均值用於將數據線性化,以便更容易觀察長期趨勢,也不會因日常波動而錯亂。例如,假設你想可視化服裝零售店的銷售趨勢。

a.移動平均值是在數據較豐富的情況下對數據做趨勢預測。

b.移動平均值,可以用函數AVERAGE對目標區域進行計算,直接求得。

c.把每個移動平均值的數據連在一起就是移動平均趨勢線,可以看到數據總體走勢。


推薦閱讀:

沒有任何基礎的人怎麼學SQL?
SQL速覽

TAG:SQL | SQL語句 |