Android 常用sql语句笔记(一)

来源:互联网 发布:淘宝游戏王店铺推荐 编辑:程序博客网 时间:2024/06/09 04:24

Android 中的sql语句记住比较麻烦,这里做一个笔记方便自己查阅。

一、表操作

1.查询数据库下的所有表信息

select * from sqlite_master where type='table' order by name
  • 例:查询数据表名为Person的信息
select * from sqlite_master where type='table' and name = 'Person'

这里写图片描述
sql为表的创建语句

2.创建表
创建一个表名为Person,id, age ,msg 三个字段

create table Person(id INTEGER primary key autoincrement,age int,name text )

不存在才创建表

create table if not exists Person(id INTEGER primary key autoincrement,age int,name text )

3.删除表
例:删除表Person

drop table if exists Person

4.查询表的字段信息
例:查询表Person的字段信息

pragma  table_info(Person)

这里写图片描述

5.增加一个字段
为Person 表增加一个JOB字段

ALTER TABLE Person ADD COLUMN JOB VARCHAR(60)

二、查询数据

1.查询表中所有数据
select * from 表名

select * from Person

2.查询数据总数
select count(*) as total from 表名

select count(*) as total from Person

3.where 用法
例:查询Person表中name为小红的数据

select * from Person where name = '小红'

4.like用法
表示某个字段数据中是否含有此值
查询Person表中name中带有‘小’字的数据

select * from Person  where name like '%小%'

5.in的用法
表示某个字段中包含的情况
例:比如查Person表中age为22与23的所有用户

//age 为22,或者23的情况select * from Person  where age in (22,23)

6.limit用法
最少查多少数据,如果总数小于limit值返回所有数据,如果大于则返回指定的数据是

//至少返回100条select * from Person limit 100

7.limit与offset共用
offset表示从哪个位置开始查询,可以用来分页查询

//从表中101条数据开始查询返回至少100条数据(如果有100以上的情况)select * from Person limit 100  offset 101

8.order by 排序
默认为正序 asc
以Person表的自增长id为例,

select * from Person order by id asc 

倒序desc

select * from Person order by id desc

9.巧用替代符
有时表名太长,我们完全可用中间替代符

//下面用t直接代替guangzhou_person表,我们也可用其他字符,注意不要用特殊字符select * from guangzhou_person t where t.name = '小红'