1. 利用抓取到的数据SpiderResult.db3建立数据库
点击连接(connection),选中“现有数据库文件”,并找到数据库文件(若没有数据库的用户名密码可以忽略)
点击确定,即可在在sqlite中看到文件的全部信息
2. 利用sql语句查询并筛选需要的数据
a) 使用说明:点击query表示查询,点击新建开始输入命令,点击运行开始运行
b) select * from 表名 (查询全部数据,*表示全部列)
c) select 列名 from 表名 (查询命令中要求的列的信息)
例如要查询content表中名称,GPS,感应器信息
注意:此处列名可以加引号也可不加。若列名为中文,根据系统提示自动补全的列名会带引号
3. 用 order by 对数据进行排序
select 列名1 from 表名 order by 列名2 desc(根据列名2对列名1进行降序排序,列名1处可以是多列信息,默认为ASC升序排列,添加DESC变为降序排序)
例如要根据USB接口对名称,GPS,感应器进行升序排序
4. 利用where语句查询固定项
select 列名1 from 表名 where 列名2 = 固定项(这里是在列名2中找到输入的固定项,输出结果是满足要求的手机的列名1的信息)
例如,找到USB接口是“Micro USB Type C”的手机并输出他们的名称,GPS,USB接口信息
5. 使用like语句模糊查找
Select 列名 from 表名 where 列名 like 关键字 (查询列名中带有关键字的所有项)
(1) like ‘ab%’ 表示查询以ab开头的所有项
(2) like ‘%ab’ 表示查询以ab结尾的所有项
(3) like ‘%ab%’表示查询任何位置包含ab的所有项
例如查询USB接口带有micro关键字的手机
注意:查询的关键字(即like后面的内容),可以使用””,也可以使用‘’,但都必须是英文输入
6. 练习
(1)根据这个数据库,查一下数据库中手机有多少种,其中使用“高通骁龙845 ”的有多少种?
命令1:SELECT 名称 FROM Content (查询手机种类)
由结果显示,数据库中共有4950种手机
命令2:SELECT "名称","CPU型号" FROM Content WHERE "CPU型号" = '高通骁龙845'
(查询使用高通骁龙845的手机)
结果显示,有25种手机使用高通骁龙845
(2)基于SQL查询,得出手机CPU选型趋势。
命令:SELECT 名称,CPU型号 FROM Content ORDER BY "CPU型号" DESC
由得到的数据信息可初步分析出市面上最常见CPU型号是高通、骁龙、联发科、海思
再分别对以上型号进行查询
其中使用“高通”、“高通骁龙”CPU型号的手机有1249种
使用“联发科”CPU型号的手机534种
使用“海思”CPU型号的手机有158种
结论与初步分析一致,使用高通骁龙类的CPU的手机最多并且远超联发科(第二)、海思(第三)及其他品牌
(3)查询手机名称中有“华为”两个关键字的。
命令:SELECT * FROM Content WHERE 名称 LIKE "%华为%"
数据库中共记录278条华为手机信息