建表:
CREATE TABLE 表名稱(chēng) (列名稱(chēng)1 數(shù)據(jù)類(lèi)型,列名稱(chēng)2 數(shù)據(jù)類(lèi)型,列名稱(chēng)3 數(shù)據(jù)類(lèi)型)
** SELECT語(yǔ)句**
下面以名字叫做** Persons**的表為例:
1、從“ Persons”表中選取 LastName 列的數(shù)據(jù):
SELECT LastName FROM Persons
2邑遏、獲取名為 "LastName" 和 "FirstName" 的列的內(nèi)容
SELECT LastName,FirstName FROM Persons
3拆座、“ Persons”表中選取所有的列
SELECT * FROM Persons【星號(hào)(*)是選取所有列的快捷方式第美。】
4航唆、“ Persons”表中獲取“ Company”列所有不重復(fù)【相同數(shù)據(jù)只統(tǒng)計(jì)一次】的數(shù)據(jù)
SELECT DISTINCT Company FROM Persons
插入語(yǔ)句【增】:INSERT INTO 表名稱(chēng) VALUES (值1, 值2,....)
1坠七、向“ Persons”表中插入一條數(shù)據(jù)
INSERT INTO Persons VALUES ('Gates', 'Bill', 'Xuanwumen 10', 'Beijing')
2誊稚、向“ Persons”表指定列中插入一條數(shù)據(jù)
INSERT INTO Persons (列1, 列2,...) VALUES (值1, 值2,....)
刪除語(yǔ)句【刪】:DELETE FROM 表名稱(chēng) WHERE 列名稱(chēng) = 值
1、在“ Person”表中刪除LastName列值為'Wilson'的行
DELETE FROM Person WHERE LastName = 'Wilson'
2倒脓、刪除所有行【清空“ Person”表撑螺,但是保留表結(jié)構(gòu)、屬性和索引】
DELETE FROM Person 或者 DELETE * FROM Person
修改語(yǔ)句【改】:UPDATE 表名稱(chēng) SET 列名稱(chēng) = 新值 WHERE 列名稱(chēng) = 某值
1崎弃、更新“ Person”中“ LastName”為'Wilson'甘晤,并將其“ FirstName”列的值改為'Fred'
UPDATE Person SET FirstName = 'Fred' WHERE LastName = 'Wilson'
2含潘、更新“ Person”中“ LastName”為'Wilson'行中,Address以及City列的值修改為'Zhongshan 23','Nanjing'
UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing'
WHERE LastName = 'Wilson'
查詢(xún)語(yǔ)句【查】:【SELECT 列名稱(chēng) FROM 表名稱(chēng) WHERE 列 運(yùn)算符 值】
首先認(rèn)識(shí)一下運(yùn)算符:【= 等于】线婚、【<> 不等于 】遏弱、【> 大于】、【< 大于】塞弊、【>= 大于等于】漱逸、【<= 小于等于】、【BETWEEN 在某個(gè)范圍內(nèi)】、【LIKE 類(lèi)似某種模式】鹅龄。注釋?zhuān)涸谀承┌姹镜?SQL 中躏哩,操作符 <> 可以寫(xiě)為 !=。
1循集、只希望在“Persions”表中選取居住在城市 "Beijing" 中的人
SELECT * FROM Persons WHERE City='Beijing'
注意:SQL 使用單引號(hào)來(lái)環(huán)繞文本值(大部分?jǐn)?shù)據(jù)庫(kù)系統(tǒng)也接受雙引號(hào))。如果是數(shù)值蔗草,請(qǐng)不要使用引號(hào)咒彤。
多條件查詢(xún)語(yǔ)句【查】:【AND 和 OR 運(yùn)算符】:
AND 和 OR 可在 WHERE 子語(yǔ)句中把兩個(gè)或多個(gè)條件結(jié)合起來(lái)。
如果第一個(gè)條件和第二個(gè)條件都成立咒精,則 AND 運(yùn)算符顯示一條記錄镶柱。
如果第一個(gè)條件和第二個(gè)條件中只要有一個(gè)成立,則 OR 運(yùn)算符顯示一條記錄模叙。
1歇拆、使用 AND 來(lái)顯示所有姓為 "Carter" 并且名為 "Thomas" 的人:
SELECT * FROM Persons WHERE FirstName='Thomas' AND LastName='Carter'
2、使用 OR 來(lái)顯示所有姓為 "Carter" 或者名為 "Thomas" 的人:
SELECT * FROM Persons WHERE firstname='Thomas' OR lastname='Carter'
3范咨、我們也可以把 AND 和 OR 結(jié)合起來(lái)(使用圓括號(hào)來(lái)組成復(fù)雜的表達(dá)式):
SELECT * FROM Persons WHERE (FirstName='Thomas' OR FirstName='William')
AND LastName='Carter'
注釋?zhuān)罕硎舅阉鳌?Persons”表中姓為'Thomas'或者'William' 并且名為'Carter'的人
排序:【ORDER BY 】
ORDER BY 語(yǔ)句用于根據(jù)指定的列對(duì)結(jié)果集進(jìn)行排序【默認(rèn)按照升序】故觅。
如果您希望按照降序?qū)τ涗涍M(jìn)行排序,可以使用 DESC 關(guān)鍵字渠啊。
1输吏、在“ ORDER”表中,以“ Company”字母順序顯示公司名稱(chēng):
SELECT Company, OrderNumber FROM Orders ORDER BY Company
2替蛉、以逆字母順序顯示公司名稱(chēng):
SELECT Company, OrderNumber FROM Orders ORDER BY Company ** DESC**
3贯溅、以字母順序顯示公司名稱(chēng)(Company),并以數(shù)字順序顯示順序號(hào)(OrderNumber):
SELECT Company, OrderNumber FROM Orders ORDER BY Company, OrderNumber
模糊查詢(xún)【查】
首先了解一下SQL通配符:
【% 替代一個(gè)或多個(gè)字符】躲查、【_ 僅替代一個(gè)字符】它浅、【[charlist] 字符列中的任何單一字符】、【[^charlist] 或者 [!charlist] 不在字符列中的任何單一字符】
1熙含、 "Persons" 表中選取居住在城市名稱(chēng)以 "Ne" 開(kāi)始的人
SELECT * FROM Persons WHERE City LIKE 'Ne%'
2罚缕、 "Persons" 表中選取居住在包含 "lond" 的城市里的人
SELECT * FROM Persons WHERE City LIKE '%lond%'
3、"Persons" 表中選取名字的第一個(gè)字符之后是 "eorge" 的人
SELECT * FROM Persons WHERE FirstName LIKE '_eorge'
4怎静、"Persons" 表中選取的這條記錄的姓氏以 "C" 開(kāi)頭邮弹,然后是一個(gè)任意字符黔衡,然后是 "r",然后是任意字符腌乡,然后是 "er"
SELECT * FROM Persons WHERE LastName LIKE 'C_r_er'
** [charlist] 示例**
5盟劫、"Persons" 表中選取居住的城市以 "A" 或 "L" 或 "N" 開(kāi)頭的人
SELECT * FROM Persons WHERE City LIKE '[ALN]%'
6、 "Persons" 表中選取居住的城市不以 "A" 或 "L" 或 "N" 開(kāi)頭的人
SELECT * FROM Persons WHERE City LIKE '[!ALN]%'
注: [charlist] 格式類(lèi)似正則表達(dá)式的用法与纽,有興趣可以看下這里的正則表達(dá)式教程
就先寫(xiě)這么多吧侣签,我平時(shí)用到的也不多,而且現(xiàn)在準(zhǔn)備轉(zhuǎn)戰(zhàn)蘋(píng)果封裝的SQLite----->CoreData了??
另外補(bǔ)充一點(diǎn):SQL 對(duì)大小寫(xiě)不敏感急迂!也就是‘ SELECT’ 和 ‘select’ 是一樣的影所,但是和‘sELect’是不是一樣的我就不清楚了,沒(méi)試過(guò)僚碎,你可以試一下猴娩,你開(kāi)心就好??