SQL_server基礎(chǔ)語句解析_第1頁
SQL_server基礎(chǔ)語句解析_第2頁
SQL_server基礎(chǔ)語句解析_第3頁
SQL_server基礎(chǔ)語句解析_第4頁
免費預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、select - 從數(shù)據(jù)庫表中獲取數(shù)據(jù)update - 更新數(shù)據(jù)庫表中的數(shù)據(jù)delete - 從數(shù)據(jù)庫表中刪除數(shù)據(jù)insert into - 向數(shù)據(jù)庫表中插入數(shù)據(jù)create database - 創(chuàng)建新數(shù)據(jù)庫create table - 創(chuàng)建新表create index - 創(chuàng)建索引(搜索鍵)alter table - 變更(改變)數(shù)據(jù)庫表alter database - 修改數(shù)據(jù)庫drop table - 刪除表drop index - 刪除索引SQL server 在編寫時,對大小寫不敏感。在語句的后面不用加分號。1、創(chuàng)建一個表:(ID(主鍵)、姓名、性別、年齡、住址)create ta

2、ble 表名 ( )create table Persons (ID int primary key not null,Name varchar(50) not null, Sex varchar( 10) not null , Age int not nullAddress varchar)*自增 identity( 開始量,自增數(shù))2、刪除一個表:drop table 表名3、向表里添加信息:insert into 表名 () values ()4、查看結(jié)果select (要查看的信息) from 表名* distinct 用于返回唯一不同的值。5、修改信息update 表名 set 列名

3、 = 修改的信息where 限制6、刪除一個內(nèi)容delete from 表名 where 條件* 選擇唯一不同的值,select distinct 語句。*order by 語句默認(rèn)按照升序?qū)τ涗涍M(jìn)行排序。如果需要逆序,需要在結(jié)尾加上desc。select top 的用法,大多數(shù)是用在大型數(shù)據(jù)的時候。便于選擇數(shù)據(jù)出來。 from 表名order by 列名(升序)select * from 表名order by 列名desc (逆序)比如說選擇一個表中的%50 數(shù)據(jù)出來。select top 50 percent 刪除列表alter table 表名 drop column 列名 主鍵prim

4、ary key* 外鍵foreign key 本表外鍵references 外表主鍵 from 表名選擇一個表中的前兩條記錄select top 2 * from 表名*like 操作符主要用在where 子句中搜索列中的指定模式。%替代一個或多個字符_僅替代一個字符charlist字符列中的任何單一字符! charlist不在字符列中的任何單一字符select * from 表名where 列名like %.*in 操作符允許我在where 子句中規(guī)定多個值select * from 表名where 列名in ( . , .)*between . and 用于 where 子句中,主要作用是

5、選擇介于兩者之間的信息。顯示范圍之外的信息,需要在between 前面加 not。select * from 表名 where 列名 between .( 含 ) and .(含)范圍 select * from 表名 where 列名 not between .( 含 ) and .(含 ) 范圍之外*join 用于兩個或者多個表中的之間的關(guān)系,從這些表中查詢數(shù)據(jù)。inner join: 如果表中有至少一個匹配,則返回行l(wèi)eft join: 即使右表中沒有匹配,也從左表返回所有的行right join: 即使左表中沒有匹配,也從右表返回所有的行full join: 只要其中一個表中存在匹配,

6、就返回行select 列名(要查找的數(shù)據(jù)) from 左表名 inner join 右表名 on 兩表中的聯(lián)系用“ =”號連接。in和exists也是很好區(qū)別的.in是 一個集合運算符.a in a,c,d,s,d.這個運算中,前面是一個元素,后面是一個集合,集合中的元素類型是和前面的元 素一樣的.而exists是一個存在判斷,如果后面的查詢中有結(jié)果,則exists為真,否則為假.in運算用在語句中,它后面帶的select 一定是選一個字段,而不是select *.比如說你要判斷某班是否存在一個名為“小明”的學(xué)生,你可以用in運算:小明in (select sname from student

7、)這樣(select sname from student)返回的是一個全班姓名的集合,in用于判斷小明”是否為此集合中的一個數(shù)據(jù);同時,你也可以用exists語句:exists (select * from student where sname= 小明)這兩個涵數(shù)是差不多的,但是由于優(yōu)化方案的不同,通常NOT EXISTS要比 NOT IN要快,因為NOT EXISTS可以使用結(jié)合算法而 NOT IN 就不行了,而 EXISTS則不如IN快,因為這時候IN可能更多的使用結(jié)合算法.select * from 表 A where exists(select * from 表 B where i

8、fe B.id= ife A.id)這句相當(dāng)于select * from 表 A where id in (select id from 表 B)對于表A的每一條數(shù)據(jù),都執(zhí)行select * from 表B where表8履=表人月 的存在 性判斷,如果表B中存在表A當(dāng)前行相同的id,則exists為真,該行顯示,否則不顯 示exits適合內(nèi)小外大的查詢,in適合內(nèi)大外小的查詢IN確定給定的值是否與子查詢或列表中的值相匹配。EXISTS指定一個子查詢,檢測行的存在。比較使用 EXISTS 和IN的查詢這個例子比較了兩個語義類似的查詢。第一個查詢使用EXISTS而第二個查詢使用IN。注意兩個查詢

9、返回相同的信息。USE pubsGOSELECT DISTINCT pub_nameFROM publishersWHERE EXISTS(SELECT *FROM titlesWHERE pub_id = publishers.pub_idAND type = business)GO-Or, using the IN clause:USE pubsGOSELECT distinct pub_nameFROM publishersWHERE pub_id IN(SELECT pub_idFROM titlesWHERE type = business)GO卜面是任一查詢的結(jié)果集:pub_nameAlgodata Infosystems New Moon Books(2 row(s) affected)exits相當(dāng)于存在

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論