wSchool

如果只希望選住在 "Beijing" 的人,則向 SELECT 語(yǔ)句添加 WHERE 子句:

SELECT * FROM PersonsWHERE City='Beijing'

*星號(hào)表示選取所有列,persons是表,city是列,=是運(yùn)算符,Beijing是字符則需用單引號(hào),如是數(shù)值則不需要任何東西

AND and 和 OR or運(yùn)算符用于一個(gè)以上的條件,它們發(fā)揮對(duì)記錄進(jìn)行過(guò)濾的作業(yè)。

AND 和 OR 用在 WHERE 子句中,它們負(fù)責(zé)把兩個(gè)或多個(gè)條件結(jié)合起來(lái)。

如果第一個(gè)條件和第二個(gè)條件都成立,則 AND 運(yùn)算符顯示一條記錄。

如果第一個(gè)條件和第二個(gè)條件中只要有一個(gè)成立,則 OR 運(yùn)算符顯示一條記錄。

eg:使用 AND 來(lái)顯示所有姓為 "Carter" 且名為 "Thomas" 的人:

SELECT * FROM Persons WHERE FirstName='Thomas'ANDLastName='Carter'#此語(yǔ)句*星號(hào)表示選取所有列,persons是表,firstname是列,=是運(yùn)算符,Thomas是列firstname里的元素,and是運(yùn)算符,lastname是列,carter是列l(wèi)astname里的元素。select語(yǔ)句的順序是:select列名from表名where子句

也可以把 AND 和 OR 結(jié)合起來(lái)(使用圓括號(hào)來(lái)組成復(fù)雜的表達(dá)式):

SELECT * FROM Persons WHERE(FirstName='Thomas'ORFirstName='William')ANDLastName='Carter'#圓括號(hào)里是or運(yùn)算符,即或,兩個(gè)條件中的一個(gè)成立就可,后面是and運(yùn)算符,兩個(gè)條件都必須成立

ORDER BY 語(yǔ)句對(duì)結(jié)果集進(jìn)行排序。

ORDER BY 語(yǔ)句根據(jù)指定列對(duì)結(jié)果集進(jìn)行排序。

ORDER BY 語(yǔ)句默認(rèn)按升序?qū)τ涗涍M(jìn)行排序。

如需降序,則 DESC (descend)。如需升序,則ASC(ascend)。

以字母順序?qū)ompany列進(jìn)行排序:

SELECT Company, OrderNumber FROM OrdersORDER BY Company#company是列名,ordernumber是列名,orders是表,此語(yǔ)句依據(jù)company列按字母順序進(jìn)行排序。注意列名與列名之間用逗號(hào)分隔

以逆字母順序?qū)ompany列進(jìn)行排序:

SELECT Company, OrderNumber FROM OrdersORDER BY Company DESC#注意desc降序關(guān)鍵字

以字母順序?qū)ompany列進(jìn)行排序,并以數(shù)字順序?qū)rderNumber列進(jìn)行排序:

SELECT Company, OrderNumber FROM OrdersORDER BY Company, OrderNumber

以逆字母順序?qū)ompany列進(jìn)行排序,并以數(shù)字順序?qū)rdernumber列進(jìn)行排序:

SELECT Company, OrderNumber FROM OrdersORDER BY Company DESC, OrderNumber ASC#注意降序desc和升序asc關(guān)鍵字

INSERT INTO 語(yǔ)句用于向表格中插入新的行。注意插入的是行,行,行,重要的字寫(xiě)三遍。

插入新行

INSERT INTO Persons VALUES ('Gates', 'Bill', 'Xuanwumen 10', 'Beijing')#此語(yǔ)句執(zhí)行插入新行的命令。insert into 是語(yǔ)法,persons是表,values是語(yǔ)法,cates,bill,xuanwuen10,beijing這些都是新行里的元素(值)。

在指定的列中插入值

INSERT INTO Persons (LastName, Address) VALUES ('Wilson', 'Champs-Elysees')#insert into是語(yǔ)法,persons是表,圓括號(hào)里是指定的列,values是語(yǔ)法,圓括號(hào)里用單引號(hào)環(huán)繞的是字符型對(duì)應(yīng)列的新值。

Update 語(yǔ)句用于修改表中的數(shù)據(jù)。

UPDATE Person SET FirstName = 'Fred' WHERE LastName = 'Wilson'#此語(yǔ)句執(zhí)行修改Wilson行(在lastname列),firstname列之值命令。update是語(yǔ)法,person是表,set是語(yǔ)法,firstname是列,Fred是修改后的新值,where是語(yǔ)法。set語(yǔ)法引出新值,where語(yǔ)法負(fù)責(zé)定位行。

UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing'

WHERE LastName = 'Wilson'#此語(yǔ)句執(zhí)行修改Wilson行(在lastname列),address列和city列之值命令。update是語(yǔ)法,person是表,set是語(yǔ)法,address是列,zhongshan23是修改后的新值,city是列,nanjing是修改后的新值,where是語(yǔ)法。

DELETE 語(yǔ)句用于刪除表中的行。是行,是行,是行,重要的事說(shuō)三遍。

DELETE FROM Person WHERE LastName = 'Wilson'#此語(yǔ)句執(zhí)行刪除Wilson行之命令。delete from是語(yǔ)法,person是表,where是語(yǔ)法,lastname是列,其實(shí)lastname列已經(jīng)被指定為行名了,那么lastname列里的值Wilson順理成章就是行名了,Wilson行。

可以在不刪除表的情況下刪除所有的行。這意味著表的結(jié)構(gòu)、屬性和索引都是完整的:

DELETE FROM table_name

或者:

DELETE * FROM table_name

top子句用于選取觀測(cè)

從 "Persons" 表中選取前兩行。

則 SELECT 語(yǔ)句:

SELECTTOP 2* FROM Persons#select top是語(yǔ)法,2是前兩行,*星號(hào)是語(yǔ)法,from是語(yǔ)法,persons是表

從 "Persons" 表中選取 50% 的觀測(cè)。

則SELECT 語(yǔ)句:

SELECTTOP 50 PERCENT* FROM Persons#select top是語(yǔ)法,50 percent是50%,*星號(hào)是語(yǔ)法,from是語(yǔ)法,persons是表

like操作符用于標(biāo)識(shí)列中元素的特征

從 "Persons" 表中選取city列中以N開(kāi)頭的元素,like操作符標(biāo)識(shí)出這種特征:

則SELECT 語(yǔ)句:

SELECT * FROM Persons

WHERE City LIKE 'N%'#select * from是語(yǔ)法,persons是表,where是語(yǔ)法,city是列,like是語(yǔ)法,'N%'是city列中以N開(kāi)頭的元素。%是通配符

從 "Persons" 表中選取city列中以g結(jié)尾的元素:

則SELECT 語(yǔ)句:

SELECT * FROM Persons

WHERE City LIKE '%g'#select * from是語(yǔ)法,persons是表,where是語(yǔ)法,city是列,like是語(yǔ)法,'%g'是city列中以g結(jié)尾的元素,like標(biāo)識(shí)出這種特征。注意通配符%的位置。

從 "Persons" 表中選取city列包含lon字樣的元素:

則SELECT 語(yǔ)句:

SELECT * FROM Persons

WHERE City LIKE '%lon%'#select * from是語(yǔ)法,persons是表,where是語(yǔ)法,city是列,like是語(yǔ)法,'%lon%'是city列中包含lon字樣的元素,%是通配符

從 "Persons" 表中選取city列中不包含lon字樣的元素:

則SELECT 語(yǔ)句:

SELECT * FROM Persons

WHERE City NOT LIKE '%lon%'#not ?like操作符標(biāo)識(shí)出city列中不包含lon字樣的元素

通配符

SQL 通配符必須與 LIKE 運(yùn)算符一起使用。


從 "Persons" 表中選取city列以Ne開(kāi)頭的元素:

則SELECT 語(yǔ)句:

SELECT * FROM Persons

WHERE City LIKE 'Ne%'#通配符%替代只是一個(gè)字符,既然是以Ne開(kāi)頭的元素,那么,通配符%肯定在其后面了呀

從 "Persons" 表中選取firstname列第一個(gè)字符之后是 "eorge" 的元素:

則?SELECT 語(yǔ)句:

SELECT * FROM Persons

WHERE FirstName LIKE '_eorge'#通配符_僅替代一個(gè)字符,firstname列第一個(gè)字符之后是 "eorge",那么,通配符_肯定在eorge前面了

從 "Persons" 表中選取city列中以 "A" 或 "L" 或 "N" 開(kāi)頭的元素:

則 SELECT 語(yǔ)句:

SELECT * FROM Persons

WHERE City LIKE '[ALN]%'#通配符[ ?]里面的字符之間是或的邏輯關(guān)系,通配符%替代至少一個(gè)字符。

從 "Persons" 表中選取city列不以"A" 或 "L" 或 "N" 開(kāi)頭的元素:

則 SELECT 語(yǔ)句:

SELECT * FROM Persons

WHERE City LIKE '[!ALN]%'#通配符[ ?]里面的字符之間是或的邏輯關(guān)系,邏輯運(yùn)算符!是非,否定邏輯,通配符%替代至少一個(gè)字符

in操作符用于提取列中多個(gè)元素

SELECT * FROM Persons

WHERE LastName IN ('Adams','Carter')#select * from是語(yǔ)法,persons是表,where是語(yǔ)法,lastname是列,in是操作符,圓括號(hào)里的是值來(lái)自列l(wèi)astname,即Adams,carter是列l(wèi)astname里元素。

BETWEEN 操作符在 WHERE 子句中使用,作用是選取介于兩個(gè)值之間的數(shù)據(jù)范圍。
這些值可以是數(shù)值、文本或者日期。

以字母順序ABCDE…對(duì)列l(wèi)astname排序后,用between操作符選取從"Adams"(包括)到"Carter"(不包括)之間的元素,則語(yǔ)句:

SELECT * FROM PersonsWHERE LastNameBETWEEN'Adams'AND'Carter'#select * from是語(yǔ)法,persons是表,where是語(yǔ)法,lastname是列,between是操作符,Adams是列l(wèi)astname里的元素,and是操作符,carter是列l(wèi)astname里的元素。

以字母順序ABCDE…對(duì)列l(wèi)astname排序后,用between操作符選取從"Adams"(包括)到"Carter"(不包括)范圍之外的元素,即從"Carter"(包括)開(kāi)始的元素,則語(yǔ)句:

SELECT * FROM PersonsWHERE LastNameNOTBETWEEN 'Adams' AND 'Carter'

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容