Android中sqlite的一些操作命令

2021-07-27 15:06:07 字數 2235 閱讀 8353

android中輕量化的sqlite很好用,本文就介紹一些常用的sqlite命令

.table 可以檢視此資料庫下所有的表;

select * from sqlite_master where type = "table";   可以查詢到當前資料庫中所有表的詳細結構資訊

.schem 可以檢視資料庫建表語句

看看目前掛的資料庫  .database 

如果要把查詢輸出到檔案  

.output 檔名  

把查詢結果用螢幕輸出  

.output stdout  

把錶結構輸出,同時索引也會輸出  

.dump 表名  

退出 .exit 或者.quit

字段擷取 substr,例如:select substr(tel,1,8) from user;

字段包含 like,例如:select tel from user where tel like"%158%";

長度 length,例如:select name from user where length(name)>11;

計數 count,例如:select count(id) from user;id為主鍵,可以寫成count(1),count(*);

上面三種count的寫法區別在於效率:一般情況下,select count (*)和select count(1)兩著返回結果是一樣的。假如表沒有主鍵(primary key), 那麼count(1)比count(*)快,如果有主鍵的話,那主鍵作為count的條件時count(主鍵)最快,如果你的表只有乙個字段的話那count(*)就是最快的,count(*) 跟 count(1) 的結果一樣,都包括對null的統計,而count(column) 是不包括null的統計

1、select 1 與 select *的區別 

selelct 常量 from ... 對應所有行,返回的永遠只有乙個值,即常量。所以正常只會用來判斷是否有還是沒有(比如exists子句)。而select * from ... 是返回所有行的所有列。 

效能上的差異,關鍵看你的from和where子句。比如說如果你的where條件中可以通過索引,那顯然 select 1 from ... 的效能比 select * from ... 好。 

2、select sum(1)的使用 

select count(*)返回所有滿足條件的記錄數,此時同select sum(1) 

但是sum()可以傳任意數字,負數、浮點數都可以,返回的值是傳入值n*滿足條件記錄數m。

字串拼接 不是concat,而是||,例如:update message set content=content||"abcd" where id%2=0 and id>50;

select 'a'+'b' 結果為0

select "a"+"1" 結果為1

select "a"+1 結果為1

select 2+1 結果為3

=在「+」運算中,sqlite將字串非數字串都當作0處理了

|| string concatenation

* arithmetic multiply

/ arithmetic divide

% arithmetic modulus

+ arithmetic add

– arithmetic subtract

<< bitwise right shift

>> bitwise left shift

& logical and

| logical or

< relational less than

<= relational less than or equal to

> relational greater than

>= relational greater than or equal to

= relational equal to

== relational equal to

<> relational not equal to

!= relational not equal to

in logical in

and logical and

or logical or

like relational string matching

glob relational filename matching

字串替換replace

sqlite官方文件:

replace的介紹:

Android中對SQLite的操作

1.總論 通常自定義類,並繼承自sqliteopenhelper,在預設的建構函式中,會呼叫父類的建構函式。只需將資料庫名傳入即可。super context,database name,null,database version 2.建立表 首先,獲取乙個可寫的資料庫物件 database thi...

Android 中 SQLite 效能優化

sqlite效能的優化,在此記錄。乙個比較全面的sqlite資料庫講解 具體用法看上面的部落格。優點 加快了查操作 缺點 降低了增刪改操作的速度,增加了空間消耗,建立索引過程耗時。基於以上特點,具體情況判斷是否建立索引。sqlite想要執行操作,需要將程式中的sql語句編譯成對應的sqlitesta...

Android中SQLite操作示例

android中sqlite操作示例 在android中對sqlite資料庫的操作,涉及以下幾個方面 1 確認資料庫檔案,即.db檔案 2 通過android.database.sqlite.sqlitedatabase類的openorcreatedatabase 方法開啟資料庫 3 資料庫操作 a...