1,数据库----select语句 详解

MySQL 软件 数据处理
SQL 语言
编写规范 mySQL 语言大写 其它小写

  1. 建立数据库
    CREATE DATABASE oneschema;

删除数据库:
mysql> DROP DATABASE 库名;

  1. 建立表

CREATE TABLE 表名 (id int primary key ,字段名 VARCHAR(20), 字段名 CHAR(1));

select 查询的结果集 如何删除 在mysql select语句删除_表名

将表中记录清空:
DELETE FROM 表名

插入
INSERT INTO 表名 ( 属性,属性 )VALUES (“hyq”,“M”);

更新表中数据:
UPDATE 表名 SET 字段名1=‘a’,字段名2=‘b’ WHERE 字段名3=‘c’;

2个知识点(大纲)

1/ 七大部分
select------输出 ④
from--------获取数据 ①
where------过滤 ②
group by—分组 ③
having------过滤 ⑤
order by----排序 ⑥
limit----------分页(限定个数)

2/ sql语句执行顺序(初始化)
数据是以表的形式展现的, 列 和 行 的形式.

from--------获取数据

拿到一个表内所有数据(一个网格的所有内容)

where------过滤

group by—分组

定义:以某一列 数据相同的作为一组

所以 你先知道分了几组 如图 那么多数据 就变成了 2条 为两组

select 查询的结果集 如何删除 在mysql select语句删除_数据_02


原理: 建立–标识–一个组内的第一行被记录下来 遇到select 输出标识

其他 不输出

这里的结果默认会有个排序

聚集函数

当count(1)–计数 有多少行
遇到
分组
这结果 是 (以上图为例)

select 查询的结果集 如何删除 在mysql select语句删除_字段名_03


select 查询的结果集 如何删除 在mysql select语句删除_数据_04


多列分组

select 查询的结果集 如何删除 在mysql select语句删除_数据_05

select------输出

‘*’ 说的是所有的属性 不推荐 建议所有属性 打上去
函数 用法大体相同

  1. count 计数(三种用法)

1.count(1)–计数 有多少行
2.count(name)
区别 如果这个name属性 有 null 这 null就不计入 其他情况一致
3.null就不计入 不重复的 计数 distinct 属性

select 查询的结果集 如何删除 在mysql select语句删除_表名_06

  1. sum 求和
  2. max 最大值
  3. min 最小值
  4. avg 平均值
  5. GROUP_CONCAT(expr) 字符串 用的少

总结:

select 查询的结果集 如何删除 在mysql select语句删除_字段名_07


select 查询的结果集 如何删除 在mysql select语句删除_字段名_08

having------过滤 (过滤输出后的内容的 过滤)

查询每个班中人数 大于三个的班级 号.
(目的明确)输出: xx
遇到 ‘每个’ 一般要用到分组
这里不可以用 where 过滤 count(*) > 3 达成 每个班中人数 大于三个 这个目的 ,如果用了 就意味着 他不知道要对什么计数 ,因为还没有分组.

select class from stu group by class having count(1) > 3;

order by----排序

可以用列名(属性名) ,也可以 用 count(*) .

limit----------分页

limit(0,2)