學習sqlite3(三)

1、創建表

create table contacts(id integer primary key, name text not null collate nocase, phone text not null default 'UNKNOWN',unique(name,phone))

2、修改表

alter table命令改變表的部分結構,既可以改變表名,也可以增加字段;

alter table table{rename to name|add column column_def}

3、查看錶定義

sqlite> .schema contacts

4、LIKE與GLOB操作符

likeJ%’表示以J開頭;
%可與任意0個或多個字符匹配;

SQLite 的 GLOB 運算符是用來匹配通配符指定模式的文本值。如果搜索表達式與模式表達式匹配,GLOB 運算符將返回真(true),也就是 1。與 LIKE 運算符不同的是,GLOB 是大小寫敏感的,對於下面的通配符,它遵循 UNIX 的語法。

5、限定和排序

 select * from food_types order by id limit 1 offset 1;

關鍵字limit限定最多返回1行,offset指定偏移的記錄數
limit與offset一同使用時,可使用,代替offset

 select * from food_types order by id limit 1,1;

這裏寫圖片描述

6、函數和聚合

計算絕對值的abs(),字符串格式函數、upper(),lower()

這裏寫圖片描述

聚合是一類特殊的函數,它從一組記錄中計算聚合值。標準的聚合函數包括sum(),avg(),count(),min(),max()

7、分組

group by
這裏寫圖片描述

8、去掉重複

select distinct type_id from foods

9、多表連接

1)內連接:通過表中的兩個字段進行連接

這裏寫圖片描述

這裏寫圖片描述

2)交叉連接:即第一個表中的所有行和第二個表中的所有行聯合起來

3)外連接:左外鏈接(sqlite僅支持這種鏈接)、右外鏈接、全外鏈接

這裏寫圖片描述

10、名稱和別名

這裏寫圖片描述

11、子查詢

12、複合查詢

13、條件查詢

情形1:接收靜態值並列出各種情況下的case返回值
case value
     when x then value_x
     when y then value_y
     when z then value_z

這裏寫圖片描述

情形2 允許when條件中有表達式
這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章