SQL基礎(chǔ)學(xué)習(xí)筆記
一、基本操作

創(chuàng)建數(shù)據(jù)庫(kù):createdatabasedatabas_name;
創(chuàng)建表:createtabletable_name(var_name1var_type,var_name2var_type,...);
查看表格式:desctable_name;
刪除表:droptabletable_name;
查看數(shù)據(jù):select*fromtable_name;
添加數(shù)據(jù):intotable_name(column_name1,column_name2,...)
value('value1','value2',...);
選擇數(shù)據(jù):selectcolumns_namefromtable_name
whereconditions;
更改數(shù)據(jù):updatetable_name
setcolumn_name1=value1,column_name2=value2(可以用表達(dá)式,如x=x+1)
whereconditions;
刪除數(shù)據(jù):fromtable_name
whereconditions;
增加列:altertabletable_name(也可用于修改其它的表的特性)
addcolumncolumn_namevar_type(first/last/after/beforecolumn_name2(指定列位置));
改變列數(shù)據(jù)類型:altertabletable_name
changecolumncolumn_name_oldcolumn_name_newvar_type_new,
modifycolumncolumn_namevar_type_new
排序:orderbycolumn_name(desc)
改特征值分組:groupbycolumn_name
復(fù)制表:createtablenew_table_nameas
select*fromold_table_name
二、細(xì)節(jié)設(shè)置和高級(jí)命令
限定不允許Null:列數(shù)據(jù)類型加上notnull
限定賦值范圍:列數(shù)據(jù)類型加上check
列取默認(rèn)值:列數(shù)據(jù)類型加上defaultvalue
主鍵設(shè)定:主鍵特征類型設(shè)定為notnull,可以加auto_increment實(shí)現(xiàn)自動(dòng)遞增
聲明主鍵:primarykey(column_name)
限制查詢數(shù)量:limitnumber/number1,number2
聲明外鍵:constraintconstraint_name
foreignkey(column_name)
referenceforeign_column_name(column_name)
聯(lián)接,給出兩列所有的組合可能:
selectname1.column_name1,name2.column_name2
fromtable_name1asname1
crossjoin
table_name2asname2(as可以不寫)
自然聯(lián)接,要求聯(lián)接的表中名稱相同的列要有相同的值,才會(huì)選擇:naturaljoin
外聯(lián)接,給出不僅給出滿足條件的項(xiàng),還會(huì)列出其中一個(gè)表中不滿足條件的項(xiàng),而另一個(gè)表對(duì)應(yīng)的數(shù)據(jù)為Null
子查詢,即中間暫存變量,以括號(hào)內(nèi)給出的select語(yǔ)句作為外層查詢的輸入。據(jù)稱所有使用子查詢的地方都可以用聯(lián)接來(lái)實(shí)現(xiàn)
合并,將多次選擇得到的結(jié)果合并起來(lái):union
視圖,即將查詢做成函數(shù),方便調(diào)用:
createviewview_nameas
selectcolumn_namesfromtable_namewhereconditions
事務(wù),要求一組數(shù)據(jù)操作要都一起完成,否則則都不進(jìn)行,防止同時(shí)多方對(duì)表進(jìn)行操作
starttransaction;%事務(wù)開(kāi)始
……
rollback;%放棄上面的操作,回到操作前的狀態(tài)
commit;%完成事務(wù)
三、選擇時(shí)的條件表達(dá)
正則表達(dá)式:likeexpr
范圍選取:in(value_name1,value_name2,...)
betweenvalue1andvalue2
四、表格設(shè)計(jì)原則
第一范式:1)數(shù)據(jù)要具有原子性,即每個(gè)特征只有一個(gè)值,且特征之間不能是同類,比如不應(yīng)該設(shè)置特征為興趣1,興趣2,興趣3...
2)每一行,既每個(gè)事例必須要有一個(gè)唯一的識(shí)別項(xiàng),即主鍵
多表:利用多張表來(lái)使數(shù)據(jù)表符合第一范式,用專屬表來(lái)專門處理具有多個(gè)值的特征,以外鍵將表關(guān)聯(lián)起來(lái)
第二范式:1)符合第一范式
2)不存在部分函數(shù)依賴,即非主鍵特征依賴于組合主鍵的一部分而非全部,只要使用人工主鍵(與數(shù)據(jù)無(wú)關(guān)的id)作為主鍵即可
第三范式:1)符合第二范式
2)不存在傳遞函數(shù)依賴,即非主鍵特征之間不存在依賴
[SQL基礎(chǔ)學(xué)習(xí)筆記]
【SQL基礎(chǔ)學(xué)習(xí)筆記】相關(guān)文章:
零基礎(chǔ)英語(yǔ)學(xué)習(xí)計(jì)劃10-17
零基礎(chǔ)英語(yǔ)學(xué)習(xí)音標(biāo)10-15
基礎(chǔ)小學(xué)數(shù)學(xué)學(xué)習(xí)方法10-19
基礎(chǔ)小學(xué)語(yǔ)文學(xué)習(xí)方法10-17
零基礎(chǔ)英語(yǔ)學(xué)習(xí)計(jì)劃范文08-24
經(jīng)濟(jì)法基礎(chǔ)學(xué)習(xí)備考建議07-12