資源描述:
《經典sql語句大全(1)》由會員上傳分享,免費在線閱讀,更多相關內容在行業(yè)資料-天天文庫。
1、一、基礎1、說明:創(chuàng)建數據庫CREATEDATABASEdatabase-name2、說明:刪除數據庫dropdatabasedbname3、說明:備份sqlserver---創(chuàng)建備份數據的deviceUSEmasterEXECsp_addumpdevice'disk','testBack','c:mssql7backupMyNwind_1.dat'---開始備份BACKUPDATABASEpubsTOtestBack4、說明:創(chuàng)建新表createtabletabname(col1type1[notnull][primarykey],co
2、l2type2[notnull],..)根據已有的表創(chuàng)建新表:A:createtabletab_newliketab_old(使用舊表創(chuàng)建新表)B:createtabletab_newasselectcol1,col2…fromtab_olddefinitiononly5、說明:刪除新表droptabletabname6、說明:增加一個列Altertabletabnameaddcolumncoltype注:列增加后將不能刪除。DB2中列加上后數據類型也不能改變,唯一能改變的是增加varchar類型的長度。7、說明:添加主鍵:Altertabl
3、etabnameaddprimarykey(col)說明:刪除主鍵:Altertabletabnamedropprimarykey(col)8、說明:創(chuàng)建索引:create[unique]indexidxnameontabname(col….)刪除索引:dropindexidxname注:索引是不可更改的,想更改必須刪除重新建。9、說明:創(chuàng)建視圖:createviewviewnameasselectstatement刪除視圖:dropviewviewname10、說明:幾個簡單的基本的sql語句選擇:select*fromtable1wher
4、e范圍插入:insertintotable1(field1,field2)values(value1,value2)刪除:deletefromtable1where范圍更新:updatetable1setfield1=value1where范圍查找:select*fromtable1wherefield1like’%value1%’---like的語法很精妙,查資料!排序:select*fromtable1orderbyfield1,field2[desc]總數:selectcountastotalcountfromtable1求和:sele
5、ctsum(field1)assumvaluefromtable1平均:selectavg(field1)asavgvaluefromtable1最大:selectmax(field1)asmaxvaluefromtable1最?。簊electmin(field1)asminvaluefromtable111、說明:幾個高級查詢運算詞A:UNION運算符UNION運算符通過組合其他兩個結果表(例如TABLE1和TABLE2)并消去表中任何重復行而派生出一個結果表。當ALL隨UNION一起使用時(即UNIONALL),不消除重復行。兩種情況下,
6、派生表的每一行不是來自TABLE1就是來自TABLE2。14B:EXCEPT運算符EXCEPT運算符通過包括所有在TABLE1中但不在TABLE2中的行并消除所有重復行而派生出一個結果表。當ALL隨EXCEPT一起使用時(EXCEPTALL),不消除重復行。C:INTERSECT運算符INTERSECT運算符通過只包括TABLE1和TABLE2中都有的行并消除所有重復行而派生出一個結果表。當ALL隨INTERSECT一起使用時(INTERSECTALL),不消除重復行。注:使用運算詞的幾個查詢結果行必須是一致的。12、說明:使用外連接A、le
7、ft(outer)join:左外連接(左連接):結果集幾包括連接表的匹配行,也包括左連接表的所有行。SQL:selecta.a,a.b,a.c,b.c,b.d,b.ffromaLEFTOUTJOINbONa.a=b.cB:right(outer)join:右外連接(右連接):結果集既包括連接表的匹配連接行,也包括右連接表的所有行。C:full/cross(outer)join:全外連接:不僅包括符號連接表的匹配行,還包括兩個連接表中的所有記錄。·JOIN:如果表中有至少一個匹配,則返回行·LEFTJOIN:即使右表中沒有匹配,也從左表返回所有
8、的行·RIGHTJOIN:即使左表中沒有匹配,也從右表返回所有的行·FULLJOIN:只要其中一個表中存在匹配,就返回行12、分組:Groupby:一張表,一旦分組