校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > SQLite 入門教程四  增刪改查 有講究

SQLite 入門教程四  增刪改查 有講究

熱門標簽:奧維地圖標注字體大小修改 高德地圖標注電話怎么沒了 孝感銷售電銷機器人廠家 電話機器人錄音師薪資 智能電銷機器人教育 江西穩定外呼系統供應商 北京智能外呼系統供應商家 中國地圖標注省份用什么符號 無錫梁溪公司怎樣申請400電話

一、插入數據 INSERT INTO 表(列...) VALUES(值...)

根據前面幾篇的內容,我們可以很輕送的創建一個數據表,并向其中插入一些數據,不多說,看例子:

復制代碼 代碼如下:

myqiao@ubuntu:~/My Documents/db$ sqlite3 test.db
-- Loading resources from /home/myqiao/.sqliterc
SQLite version 3.7.4
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .tables
sqlite> 
sqlite> CREATE TABLE Teachers(
   ...> Id integer PRIMARY KEY,
   ...> Name text NOT NULL,
   ...> Age integer CHECK(Age>22),
   ...> Country text DEFAULT 'USA');
sqlite> .tables
Teachers
sqlite>
sqlite> INSERT INTO Teachers VALUES(1,'Alice',25,'CHN');
sqlite> INSERT INTO Teachers VALUES(2,'Bob',25,'BRA');
sqlite> INSERT INTO Teachers(Id,Name,Age,Country) VALUES(3,'Charls',33,'USA');
sqlite> INSERT INTO Teachers(Name,Age) VALUES('Jhon',43);
sqlite> SELECT * FROM Teachers;
Id    Name             Age              Country       
----  ---------------  ---------------  ---------------
1     Alice            25               CHN           
2     Bob              25               BRA           
3     Charls           33               USA           
4     Jhon             43               USA           
sqlite>

            很簡單,創建了一個 Teachers 表并向其中添加了四條數據,設定了一些約束,其中有自動增加的主鍵、默認值等等。

二、修改數據 UPDATE 表 SET 列 = '新值' 【WHERE 條件語句】

UPDATE 語句用來更新表中的某個列,如果不設定條件,則所有記錄的這一列都被更新; 如果設定了條件,則符合條件的記錄的這一列被更新, WHERE 子句被用來設定條件,如下例:

復制代碼 代碼如下:

sqlite> 
sqlite> SELECT * FROM Teachers;
Id    Name             Age              Country       
----  ---------------  ---------------  ---------------
1     Alice            25               CHN           
2     Bob              25               BRA           
3     Charls           33               USA           
4     Jhon             43               USA           
sqlite>
sqlite>
sqlite> UPDATE Teachers SET Country='China';
sqlite> SELECT * FROM Teachers;
Id    Name             Age              Country       
----  ---------------  ---------------  ---------------
1     Alice            25               China         
2     Bob              25               China         
3     Charls           33               China         
4     Jhon             43               China  
sqlite>
sqlite>      
sqlite> UPDATE Teachers SET Country='America' WHERE Id=3;
sqlite> SELECT * FROM Teachers;
Id    Name             Age              Country       
----  ---------------  ---------------  ---------------
1     Alice            25               China         
2     Bob              25               China         
3     Charls           33               America       
4     Jhon             43               China         
sqlite>
sqlite>
sqlite> UPDATE Teachers SET Country='India' WHERE Age30;
sqlite> SELECT * FROM Teachers;
Id    Name             Age              Country       
----  ---------------  ---------------  ---------------
1     Alice            25               India         
2     Bob              25               India         
3     Charls           33               America       
4     Jhon             43               China    
sqlite>

三、刪除數據 DELETE FROM 表 【WHERE 條件語句】

如果設定 WHERE 條件子句,則刪除符合條件的數據記錄;如果沒有設定條件語句,則刪除所有記錄

復制代碼 代碼如下:

sqlite>
sqlite> SELECT * FROM Teachers;
Id    Name             Age              Country       
----  ---------------  ---------------  ---------------
1     Alice            25               India         
2     Bob              25               India         
3     Charls           33               America       
4     Jhon             43               China    
sqlite>
sqlite>
sqlite> DELETE FROM Teachers WHERE Age>30;
sqlite> SELECT * FROM Teachers;
Id    Name             Age              Country       
----  ---------------  ---------------  ---------------
1     Alice            25               India         
2     Bob              25               India 
sqlite>
sqlite>      
sqlite> DELETE FROM Teachers;
sqlite> SELECT * FROM Teachers;
sqlite>

四、查找數據 SELECT 列... FROM 表

為了后面的練習,需要一些樣本數據。 首先將下面的 SQL 語句保存到 data.sql 文件中

復制代碼 代碼如下:

BEGIN TRANSACTION;
CREATE TABLE Cars(Id integer PRIMARY KEY, Name text, Cost integer);
INSERT INTO Cars VALUES(1,'Audi',52642);
INSERT INTO Cars VALUES(2,'Mercedes',57127);
INSERT INTO Cars VALUES(3,'Skoda',9000);
INSERT INTO Cars VALUES(4,'Volvo',29000);
INSERT INTO Cars VALUES(5,'Bentley',350000);
INSERT INTO Cars VALUES(6,'Citroen',21000);
INSERT INTO Cars VALUES(7,'Hummer',41400);
INSERT INTO Cars VALUES(8,'Volkswagen',21600);
COMMIT;

 

BEGIN TRANSACTION;
CREATE TABLE Orders(Id integer PRIMARY KEY, OrderPrice integer CHECK(OrderPrice>0),
                    Customer text);
INSERT INTO Orders(OrderPrice, Customer) VALUES(1200, "Williamson");
INSERT INTO Orders(OrderPrice, Customer) VALUES(200, "Robertson");
INSERT INTO Orders(OrderPrice, Customer) VALUES(40, "Robertson");
INSERT INTO Orders(OrderPrice, Customer) VALUES(1640, "Smith");
INSERT INTO Orders(OrderPrice, Customer) VALUES(100, "Robertson");
INSERT INTO Orders(OrderPrice, Customer) VALUES(50, "Williamson");
INSERT INTO Orders(OrderPrice, Customer) VALUES(150, "Smith");
INSERT INTO Orders(OrderPrice, Customer) VALUES(250, "Smith");
INSERT INTO Orders(OrderPrice, Customer) VALUES(840, "Brown");
INSERT INTO Orders(OrderPrice, Customer) VALUES(440, "Black");
INSERT INTO Orders(OrderPrice, Customer) VALUES(20, "Brown");
COMMIT;

然后在在終端執行命令 .read data.sql,將數據導入到數據庫中

復制代碼 代碼如下:

sqlite> 
sqlite> .tables
Friends
sqlite> .read data.sql
sqlite> .tables
Cars      Orders    Teachers
sqlite>

            可以看到,Cars 表和 Orders 表已經導入到數據庫中,現在可以查詢了

復制代碼 代碼如下:

sqlite> 
sqlite> SELECT * FROM Cars;
Id    Name             Cost          
----  ---------------  ---------------
1     Audi             52642         
2     Mercedes         57127         
3     Skoda            9000          
4     Volvo            29000         
5     Bentley          350000        
6     Citroen          21000         
7     Hummer           41400         
8     Volkswagen       21600
sqlite> SELECT * FROM Orders;
Id    OrderPrice       Customer      
----  ---------------  ---------------
1     1200             Williamson    
2     200              Robertson     
3     40               Robertson     
4     1640             Smith         
5     100              Robertson     
6     50               Williamson    
7     150              Smith         
8     250              Smith         
9     840              Brown         
10    440              Black         
11    20               Brown
sqlite>

五、 限制返回數量 SELECT 列... FROM 表 LIMIT 數量 OFFSET 位置

有時候數據庫中的數據太多,全部返回可不行,可以限制返回的數量,還可以設定返回的起始位置,如下:

復制代碼 代碼如下:

sqlite> 
sqlite> SELECT * FROM Cars LIMIT 4;
Id    Name             Cost          
----  ---------------  ---------------
1     Audi             52642         
2     Mercedes         57127         
3     Skoda            9000          
4     Volvo            29000         
sqlite>
sqlite> SELECT * FROM Cars LIMIT 4 OFFSET 2;
Id    Name             Cost          
----  ---------------  ---------------
3     Skoda            9000          
4     Volvo            29000         
5     Bentley          350000        
6     Citroen          21000          
sqlite>

六、 別名 SELECT 列 AS 別名,列 AS 別名 FROM

我們可以給返回數據集中的某些列起一個比較直觀的名字,比如把 Cost 改為"Price Of Car"

復制代碼 代碼如下:

sqlite> 
sqlite> SELECT Name , Cost AS 'Price Of Car' FROM Cars;
Name  Price Of Car  
----  ---------------
Audi  52642         
Merc  57127         
Skod  9000          
Volv  29000         
Bent  350000        
Citr  21000         
Humm  41400         
Volk  21600           
sqlite>

七、 條件查詢 SELECT 列 FROM 表 【WHERE 條件語句】

一般的條件語句都是大于、小于、等于之類的,這里有幾個特別的條件語句

LIKE

--------------------------------------------------------------------------------

LIKE 用通配符匹配字符串
下劃線 _ 匹配一個字符串
百分號 % 匹配多個字符串
LIKE 匹配字符串時不區分大小寫

復制代碼 代碼如下:

sqlite> 
sqlite> SELECT * FROM Cars WHERE Name Like '____';
Id    Name             Cost          
----  ---------------  ---------------
1     Audi             52642           
sqlite>
sqlite> SELECT * FROM Cars WHERE Name Like '%en';
Id    Name             Cost          
----  ---------------  ---------------
6     Citroen          21000         
8     Volkswagen       21600          
sqlite>
sqlite> SELECT * FROM Cars WHERE Name Like '%EN';
Id    Name             Cost          
----  ---------------  ---------------
6     Citroen          21000         
8     Volkswagen       21600          
sqlite>

GLOB

--------------------------------------------------------------------------------

GLOB 用通配符匹配字符串
下劃線 ? 匹配一個字符串
百分號 * 匹配多個字符串
LIKE 匹配字符串時,區分大小寫
BETWEEN 值1 AND 值2

--------------------------------------------------------------------------------

返回兩個值之間的數據集合。下面的語句查詢價格在 20000 到 55000 之間的車,都是好車啊。

復制代碼 代碼如下:

sqlite> 
sqlite> SELECT * FROM Cars WHERE Cost BETWEEN 20000 AND 55000;
Id    Name             Cost          
----  ---------------  ---------------
1     Audi             52642         
4     Volvo            29000         
6     Citroen          21000         
7     Hummer           41400         
8     Volkswagen       21600       
sqlite>

IN (集合)

--------------------------------------------------------------------------------

對應列的值必須在集合中。下面的語句查找奧迪和悍馬的價格。

復制代碼 代碼如下:

sqlite> 
sqlite> SELECT * FROM Cars WHERE Name IN ('Audi','Hummer');
Id    Name             Cost          
----  ---------------  ---------------
1     Audi             52642         
7     Hummer           41400        
sqlite>

八、 排序 ORDER BY 列 ASC (DESC)

指定某個列進行排序,ASC 為升序,DESC 為降序。下面的語句查詢汽車品牌和價格,并以價格排序

復制代碼 代碼如下:

sqlite> 
sqlite> SELECT Name, Cost FROM Cars ORDER BY Cost DESC;
Name  Cost          
----  ---------------
Bent  350000        
Merc  57127         
Audi  52642         
Humm  41400         
Volv  29000         
Volk  21600         
Citr  21000         
Skod  9000      
sqlite>

九、 區分 DISTINCT 列

有一些字段的值可能會出現重復,比如訂單表中,一個客戶可能會有好幾份訂單,因此客戶的名字會重復出現。

到底有哪些客戶下了訂單呢?下面的語句將客戶名字區分出來。

復制代碼 代碼如下:

sqlite> 
sqlite> Select * FROM Orders;
Id    OrderPrice       Customer      
----  ---------------  ---------------
1     1200             Williamson    
2     200              Robertson     
3     40               Robertson     
4     1640             Smith         
5     100              Robertson     
6     50               Williamson    
7     150              Smith         
8     250              Smith         
9     840              Brown         
10    440              Black         
11    20               Brown       
sqlite>
sqlite> SELECT DISTINCT Customer FROM ORDERS;
Customer      
---------------
Black         
Brown         
Robertson     
Smith         
Williamson      
sqlite>

十、 分組 GROUP BY 列

分組和前面的區分有一點類似。區分僅僅是為了去掉重復項,而分組是為了對各類不同項進行統計計算。

比如上面的例子,我們區分出 5 個客戶,這 5 個客戶一共下了 11 個訂單,說明很多客戶都下了不止一個訂單。

下面的語句統計每個客戶在訂單上總共花費了多少錢。

復制代碼 代碼如下:

sqlite> 
sqlite> SELECT sum(OrderPrice) AS Total, Customer FROM Orders GROUP BY Customer;
Total            Customer      
---------------  ---------------
440              Black         
860              Brown         
340              Robertson     
2040             Smith         
1250             Williamson     
sqlite>            

這里 Sum 是 SQLite 內置的統計函數,在這個例子中用來求每個顧客的訂單價格的和。

統計結果也可以設定返回條件,但是不能用 WHERE 子句,而是用 HAVING 子句,如下例,返回訂單總額大于 1000 的顧客。

復制代碼 代碼如下:

sqlite> 
sqlite> SELECT sum(OrderPrice) AS Total, Customer FROM Orders
   ...>         GROUP BY Customer HAVING sum(OrderPrice)>1000;
Total            Customer      
---------------  ---------------
2040             Smith         
1250             Williamson    
sqlite>

十一、 邏輯運算符

有的查詢涉及的條件語句很復雜,是有好幾個條件語句經過邏輯運算得來的,一共有三種邏輯運算符:

AND
OR
NOT
一般稍微了解點編程知識的應該都沒問題。

您可能感興趣的文章:
  • SQLite3 API 編程手冊
  • SQLite 錯誤碼整理
  • SQLite學習手冊(SQLite在線備份)
  • SQLite3 命令行操作指南
  • 為SQLite3提供一個ANSI到UTF8的互轉函數
  • SQLite 內存數據庫學習手冊
  • SQLite 入門教程三 好多約束 Constraints
  • SQLite 入門教程二 SQLite的創建、修改、刪除表
  • SQLite 入門教程一 基本控制臺(終端)命令
  • Linux sqlite3 基本命令
  • Android使用SQLite數據庫的簡單實例
  • android中sqlite的按條件查找的小例子
  • 基于sqlite特殊字符轉義的實現方法
  • 解析SQLite中的常見問題與總結詳解
  • 淺談SQLite時間函數的使用說明與總結分析
  • 深入SQLite基本操作的總結詳解
  • Android畫圖并保存圖片的具體實現代碼
  • android創建數據庫(SQLite)保存圖片示例

標簽:齊齊哈爾 阜陽 那曲 通化 荊州 海北 泰州 臨滄

巨人網絡通訊聲明:本文標題《SQLite 入門教程四  增刪改查 有講究》,本文關鍵詞  SQLite,入門教程,四,amp,nbsp,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《SQLite 入門教程四  增刪改查 有講究》相關的同類信息!
  • 本頁收集關于SQLite 入門教程四  增刪改查 有講究的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    亚洲国产精品激情在线观看| 国产亚洲va综合人人澡精品 | 欧美熟乱第一页| 成人精品一区二区三区四区 | 成人av动漫网站| 国产精品一区一区| 国内成人精品2018免费看| 国产毛片精品国产一区二区三区| 久久99精品一区二区三区三区| 另类小说色综合网站| 国产一区二区精品久久91| 国产一区二区三区观看| 成人avav影音| 97久久超碰国产精品电影| 在线日韩国产精品| 欧美日韩dvd在线观看| 欧美一区二区三区喷汁尤物| 精品久久久久久久久久久院品网 | 国产精品毛片a∨一区二区三区| 国产亚洲短视频| 综合婷婷亚洲小说| 首页国产丝袜综合| 国产在线麻豆精品观看| 波多野结衣的一区二区三区| 91黄色激情网站| 日韩欧美激情一区| 91污片在线观看| 欧美一区二区久久久| 国产精品美女久久久久aⅴ | 九一九一国产精品| 91网站在线观看视频| 欧美色网一区二区| 久久精品欧美一区二区三区不卡| 亚洲精品一二三| 精品一区二区三区在线观看| 色哟哟欧美精品| 51精品秘密在线观看| 亚洲视频免费看| 亚洲精品乱码久久久久久久久| 免费在线看一区| 成人黄页毛片网站| 日韩亚洲欧美在线| 国产精品二三区| 韩国午夜理伦三级不卡影院| 欧美婷婷六月丁香综合色| 精品99久久久久久| 性做久久久久久久免费看| 成人va在线观看| 欧美成人伊人久久综合网| 亚洲一区日韩精品中文字幕| 高清国产午夜精品久久久久久| 欧美日韩一级视频| 国产精品国模大尺度视频| 久久精品国产免费看久久精品| 91精品办公室少妇高潮对白| 欧美激情一区二区三区不卡| 国产中文字幕一区| 日韩欧美久久一区| 午夜激情综合网| 欧美自拍丝袜亚洲| 亚洲免费在线视频| 91美女在线看| 国产精品毛片大码女人| 国产91在线|亚洲| 精品国产91洋老外米糕| 男女激情视频一区| 日韩欧美一级二级三级| 男男gaygay亚洲| 91精品国产黑色紧身裤美女| 亚洲国产另类av| 欧美欧美欧美欧美首页| 亚洲二区视频在线| 欧美日韩一区 二区 三区 久久精品| 亚洲欧美激情一区二区| 99久久精品国产一区二区三区| 欧美国产亚洲另类动漫| 成人午夜av在线| 国产精品久久久久久久蜜臀| 成人禁用看黄a在线| 国产精品久久久久久妇女6080 | 国产精品系列在线播放| 久久综合色天天久久综合图片| 美女性感视频久久| www欧美成人18+| 国产999精品久久久久久| 国产精品免费久久久久| jvid福利写真一区二区三区| 国产精品久久久久永久免费观看 | 97se亚洲国产综合自在线不卡| 国产精品美日韩| 欧美在线一区二区三区| 日韩电影在线一区二区三区| 久久综合九色综合欧美就去吻 | 一区二区三区av电影| 欧美xxx久久| 亚洲国产综合在线| 亚洲国产精品久久一线不卡| 高清国产午夜精品久久久久久| 欧美精品一区二区在线观看| 日韩欧美电影一区| 免费观看久久久4p| 91精品综合久久久久久| 激情综合色综合久久综合| 国产欧美日本一区二区三区| 一本久久精品一区二区| 亚洲va天堂va国产va久| 国产亚洲精品aa午夜观看| 99精品一区二区三区| 免费成人在线视频观看| 欧美高清在线精品一区| 欧美久久久久久久久中文字幕| 国产一区二区三区四区在线观看| 亚洲男同性恋视频| 日韩免费性生活视频播放| 91美女在线视频| 国内精品国产三级国产a久久| 亚洲综合网站在线观看| 国产色产综合色产在线视频| 欧美色爱综合网| 成人性视频网站| 秋霞国产午夜精品免费视频 | 婷婷国产v国产偷v亚洲高清| 日本一区二区在线不卡| 91麻豆精品国产无毒不卡在线观看| 国产精品66部| 日韩中文字幕1| 亚洲理论在线观看| 国产午夜精品久久久久久免费视| 欧美另类videos死尸| 91免费精品国自产拍在线不卡| 另类成人小视频在线| 亚洲va国产va欧美va观看| 国产精品久久久久久久岛一牛影视| 欧美一级片在线看| 欧美高清dvd| 欧美亚洲另类激情小说| 91网址在线看| 99国产精品久久久久久久久久| 国产一区二区三区免费看| 欧美aaaaaa午夜精品| 在线一区二区视频| 亚洲二区在线观看| 亚洲视频一区二区在线| 中文字幕av一区二区三区| 日韩精品一区二区三区四区视频| 欧美丝袜丝交足nylons图片| 色久综合一二码| 91片在线免费观看| 99久久久精品| 97精品视频在线观看自产线路二 | 国产精品久久一级| 国产精品久久久久久久久动漫 | 首页国产欧美久久| 亚洲成年人影院| 日韩av一级片| 久久精品理论片| 国产一区二区三区观看| 国产91精品一区二区麻豆网站| 国产精品综合视频| 高潮精品一区videoshd| 国产v综合v亚洲欧| 99re视频这里只有精品| 欧美在线播放高清精品| 欧美视频在线观看一区二区| 91麻豆精品国产91久久久使用方法 | 91麻豆产精品久久久久久| 色婷婷av一区二区| 宅男噜噜噜66一区二区66| 精品国产凹凸成av人导航| 国产精品网站一区| 亚洲另类色综合网站| 婷婷久久综合九色综合伊人色| 青青草国产精品97视觉盛宴| 国产一区久久久| 91在线无精精品入口| 欧美日韩免费在线视频| 日韩精品一区二区在线| 国产欧美一区二区三区沐欲| 亚洲视频1区2区| 亚洲国产日产av| 精品一区二区日韩| 99精品在线观看视频| 欧美日韩成人一区二区| 久久色在线观看| 亚洲欧美日韩国产一区二区三区 | 亚洲国产精品一区二区久久恐怖片| 午夜在线成人av| 国产精品69毛片高清亚洲| 在线一区二区视频| 久久久久成人黄色影片| 亚洲精品久久久久久国产精华液| 亚洲综合一区二区| 国产99久久久国产精品| 欧美丰满少妇xxxxx高潮对白| 久久久久国色av免费看影院| 亚洲一区二区av电影| 国产一区视频在线看| 欧美日韩三级在线| 亚洲欧美在线另类| 日本免费在线视频不卡一不卡二|