Dieser Artikel vermittelt Ihnen relevantes Wissen über MySQL. Die grundlegenden Operationen von SQL beziehen sich im Allgemeinen auf das Hinzufügen, Löschen, Ändern und Abfragen von Datenbanken, Datentabellen und Daten Schauen Sie sich das mal an, ich hoffe, es hilft allen.
Empfohlenes Lernen: MySQL-Video-Tutorial
总的来说,SQL分为四大类,分别是数据定义语言DDL,数据操作语言DML,数据查询语言DQL和数据控制语言DCL。
Die grundlegenden Operationen von SQL beziehen sich im Allgemeinen auf das Hinzufügen, Löschen, Ändern und Abfragen von Datenbanken, Datentabellen und Daten.
Das erste, was Sie lernen müssen, ist die Verwendung von DDL zum Betreiben der Datenbank, hauptsächlich zum Hinzufügen, Löschen, Ändern und Abfragen der Datenbank. 1.1 Abfragen: Alle Datenbanken abfragen: , wenn Wenn die Datenbank bereits vorhanden ist, tritt ein Fehler auf. Wenn wir also eine neue Datenbank erstellen, stellen wir im Allgemeinen fest, ob die Datenbank vorhanden ist. Wenn sie bereits vorhanden ist, wird sie nicht erstellt.
show databases;
1.3 Datenbank löschen
create database 数据库名称;
Datenbank löschen (feststellen, ob die Datenbank bereits vorhanden ist):
create database if not exists 数据库名称;
Zum Beispiel:
1.4 Verwendung der Datenbank
drop database 数据库名称;
Fragen Sie die aktuell verwendete Datenbank ab:
drop database if exists 数据库名称;
Zum Beispiel:
2. DDL – Datentabelle betreiben
2.1 Datentypen
MySQL unterstützt mehrere Datentypen, sie können jedoch grob in drei Typen unterteilt werden, nämlich numerischer Typ, Datumstyp und Zeichenfolgentyp. Im Folgenden sind einige der am häufigsten verwendeten Datentypen aufgeführt:
Wert:
Datentyp
int
Datumswert, enthält nur Jahr, Monat, Tag | |
---|---|
Zeichenfolge: | |
Datentyp | |
String mit variabler Länge |
---|
运算符 | 功能描述 |
---|---|
> | 大于 小于 等于 不等于 |
between…and… | 在这个范围之内 |
in(…) | 多选一 |
is null / is not null | 是null / 不是null |
and 或 && | 并且 |
or 或 || | 或者 |
使用学生表进行条件查询练习:
查询年龄大于20的学生信息:
select * from stu where age>20;
查询年龄等于18岁 或者 年龄等于20岁 或者 年龄等于21岁的学生信息:
select * from stu where age in(18,20,21);
模糊查询使用like关键字,可以使用通配符进行占位:
查询姓名中含有张的学生信息:
select * from stu where name like '%张%';
select 字段列表 from 表名 order by 排序字段名1 [排序方式]...;
注:排序方式有两种:分别是升序ASC和降序DESC,默认情况下是升序ASC。
使用学生表进行排序查询练习:
查询学生信息,按照数学成绩降序排列:
select * from stu order by math DESC;
什么是聚合函数呢?在进行查询操作时,往往需要对一整列进行运算,例如可以计算一整列成绩数据的平均值,我们就要使用聚合函数。下面是常见的聚合函数:
函数名 | 功能 |
---|---|
count(列名) | 统计数量(一般选用不为null的列) |
max(列名) | 最大值 |
min(列名) | 最小值 |
sum(列名) | 求和 |
avg(列名) | 平均值 |
一般语法:
select 聚合函数 from 表名;
注:NULL值不参与聚合函数运算。
使用学生表进行聚合函数的练习:
统计该表中一共有几个学生:
select count(id) from stu;
上面我们使用某一字段进行运算,这样做可能面临的问题是某一个值可能是NULL,所以我们一般使用 *
进行运算,因为一行中不可能所有的字段都是NULL。
select count(*) from stu;
查询数学成绩的平均分:
select avg(math) from stu;
select 字段列表 from 表名 [where 分组前的条件限定] group by 分组字段名 [having 分组后的条件过滤]
注:分组之后,查询的字段为聚合函数和分组字段,查询其他字段无任何意义。
使用学生表进行分组查询练习:
查询男同学和女同学各自的数学平均分,以及各自人数,要求:分数低于70分的不参与分组:
select gender, avg(math),count(*) from stu where math > 70 group by gender;
查询男同学和女同学各自的数学平均分,以及各自人数,要求:分数低于70分的不参与分组,分组之后人数大于2个的:
select gender, avg(math),count(*) from stu where math > 70 group by gender having count(*) > 2;
注:where 和 having
执行时机不一样:where 是分组之前进行限定,不满足where条件,则不参与分组,而having是分组之后对结果进行过滤。所以,where 不能对聚合函数进行判断,having 可以。
在我们的印象中,网页在展示大量的数据时,往往不是把数据一下全部展示出来,而是用分页展示的形式,其实就是对数据进行分页查询的操作,即每次只查询一页的数据展示到页面上。
select 字段列表 from 表名 limit 查询起始索引,查询条目数;
在 limit
关键字中,查询起始索引这个参数是从0开始的。
使用学生表进行分页查询练习:
从0开始查询,查询3条数据:
select * from stu limit 0,3;
起始索引 = (当前页码 - 1) * 每页显示的条数
推荐学习:mysql视频教程
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der MySQL-Grundoperationen (CRUD). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!