数据库的学习

一、学习笔记

1、COUNT(*)与GROUP BY的使用:

COUNT(*)记录数据总和。

GROUP BY对数据进行分组。在SELECT语句中,GROUP BY子句放在WHERE子句之后,放在ORDER BY子句之前。

代码:SELECT CPU型号 ,count(*) FROM Content GROUP BY CPU型号 ORDER BY count(*) DESC

查询结果:

mysql如何count 对group by 的结果求和 数据库count group by_SQL

COUNT(*)列为该CPU的手机一共有多少个。

参考链接:


2、OEDER BY的使用:

ORDER BY 子句是用来基于一个或多个列按升序或降序顺序排列数据。

代码:select 名称,cpu型号,PageUrl from Content where cpu型号='' order by 名称;

查询结果:

mysql如何count 对group by 的结果求和 数据库count group by_数据_02

3、DISTINCT的使用:

DISTINCT子句与SELECT语句一起使用,用来消除所有重复记录,并仅获取唯一记录。当在表中有多个重复记录时可使用它来过滤重复的记录。

代码:SELECT  DISTINCT "CPU型号"  FROM CONTENT

查询结果:

 

mysql如何count 对group by 的结果求和 数据库count group by_运算符_03

问题:想查看合并了一共多少项于是更改代码为:SELECT  DISTINCT "CPU型号" COUNT(*) FROM CONTENT

4、LIMT的使用:

LIMIT 子句用于限制由 SELECT 语句返回的数据数量。其中LIMIT 3 OFFSET 2的意思是说在查询结果中以第2条记录为基准(包括第2条),取3条记录,这样所取得的记录即为第2条记录到第5条记录。

代码:select  名称,CPU型号,count(*) FROM Content GROUP BY "CPU型号"  ORDER BY count(*) DESC LIMIT 3 OFFSET 2

查询结果:

 

mysql如何count 对group by 的结果求和 数据库count group by_运算符_04

参考链接:

二、思考题

1、将一个表的数据提取出来导入另一个表中?

过程:

第一步在在要复制的表上点右键选择转储SQL文件。如果只想导出结构选择仅结构,如果数据和结构都想导出选择结构和数据。这里以结构和数据都储存为例。(仅结构同理)。

 

mysql如何count 对group by 的结果求和 数据库count group by_运算符_05

选择保存的地址。

 

mysql如何count 对group by 的结果求和 数据库count group by_运算符_06

以记事本的格式打开

 

mysql如何count 对group by 的结果求和 数据库count group by_数据_07

打开后的样子:

mysql如何count 对group by 的结果求和 数据库count group by_运算符_08

将内容复制到查询框:

 

mysql如何count 对group by 的结果求和 数据库count group by_SQL_09

点击运行即可。若要在同一包中记得将表明全部修改。以图为例即将表中的Conten全部修改。

mysql如何count 对group by 的结果求和 数据库count group by_运算符_10

2、查询规定行数范围的数据

LIMIT 子句用于限制由 SELECT 语句返回的数据数量。其中LIMIT 3 OFFSET 2的意思是说在查询结果中以第2条记录为基准(包括第2条),取3条记录,这样所取得的记录即为第2条记录到第5条记录。

代码:select  名称,CPU型号,count(*) FROM Content GROUP BY "CPU型号"  ORDER BY count(*) DESC LIMIT 3 OFFSET 2

查询结果:

 

mysql如何count 对group by 的结果求和 数据库count group by_数据_11

参考链接:

3、查找名称中前两个字为“华为”的有多少条:

代码:SELECT 名称 FROM Content WHERE 名称 GLOB '华为*'

查询结果:

 

mysql如何count 对group by 的结果求和 数据库count group by_SQL_12

补充:

Glob匹配字句

SQLite 的 GLOB 运算符是用来匹配通配符指定模式的文本值。如果搜索表达式与模式表达式匹配,GLOB 运算符将返回真(true),也就是 1。与 LIKE 运算符不同的是,GLOB 是大小写敏感的,对于下面的通配符,它遵循UNIX 的语法。

星号 (*)

问号 (?)

星号(*)代表零个、一个或多个数字或字符。问号(?)代表一个单一的数字或字符。这些符号可以被组合使用。

下面一些实例演示了 带有

 

mysql如何count 对group by 的结果求和 数据库count group by_运算符_13