MYSQL&SQL
1、概述
1.1、什么是mysql
MySQL是一个
关系型数据库管理系统,由瑞典 MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL 是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一
1.2、什么是关系型数据库
关系型数据库,是指采用了
关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。用户通过查询来检索数据库中的数据,而查询是一个用于限定数据库中某些区域的执行代码。关系模型可以简单理解为二维表格模型,而一个关系型数据库就是由 二维表及其之间的关系 组成的一个数据组织。
1.3、mysql程序结构

1.4、数据库的相关概念
-
DB
数据库:存储数据的仓库,保存了一系列有组织的数据
-
DBMS
数据库管理系统,数据库是通过DBMS创建和操作的容器
-
SQL
结构化查询语言,专门用来与数据库通信的语言,几乎所有DBMS都支持SQL
1.5、SQL语言的分类
-
DML
数据操纵语句,用于添加、删除、修改、查询数据库记录,并检查数据完整性
INSERT:添加数据到数据库中 UPDATE:修改数据库中的数据 DELETE:删除数据库中的数据 SELECT:选择(查询)数据 -
DDL
数据定义语句,用于库和表的创建、修改、删除
CREATE TABLE:创建数据库表 ALTER TABLE:更改表结构、添加、修改、删除列长度 DROP TABLE:删除表 CREATE INDEX:在表上建立索引 DROP INDEX:删除索引 -
DCL
数据控制语句,用于定义用户的访问权限和安全级别
GRANT:授予访问权限 REVOKE:撤销访问权限 COMMIT:提交事务处理 ROLLBACK:事务处理回退 SAVEPOINT:设置保存点 LOCK:对数据库的特定部分进行锁定
2、怎么进入mysql
- 打开命令提示符
- 输入命令
mysql -u root -p - 回车输入密码
- 输入
exit退出mysql
3、mysql的语法规范
- 不区分大小写
- 每句话以;或者\g结尾
- 各子句一般分行写
- 关键字不能缩写也不能分行
- 用缩进提高语句的可读性
4、数据处理之查询
4.1、基本的select语句
-
选择表和选择列的关键字SELECT 标识选择哪些列 FROM 标识从哪个表中选择 -
选择全部列SELECT * -
选择特定列SELECT id, name, age -
列的别名紧跟列名、也可以使用关键字AS进行连接、别名可以使用双引号
select last_name AS name select last_name name select last_name "name" -
显示表结构describe tableName desc tableName
4.2、过滤和排序数据
4.2.1、比较运算符
| 操作符 | 含义 |
|---|---|
| = | 等于(不是==) |
| > | 大于 |
| >= | 大于等于 |
| < | 小于 |
| <= | 小于等于 |
| <> | 不等于(!=) |
select name from user where id=2;
select id from user where name='李四';
4.2.2、其他运算符
| 操作符 | 含义 |
|---|---|
| between...and... | 在两个值之间(包含边界) |
| in(set) | 等于值列表中的一个 |
| like | 模糊查询 |
| is null | 空值 |
-
between查询user表所有列中id在2到10之间记录(包含边界)
select * from user where id between 2 and 10; -
in查询user表所有列中id等于1,2,3,100的记录
select * from user where id in(1,2,3,100); -
like% 代表零个或多个字符;_ 代表一个字符
在所有记录中查询name的第二个字符是四的记录
select * from user where name like '_四'; select * from user where number like '10%'; -
null查找id是空值的记录
select * from user where id is null;
4.2.3、逻辑运算符
| 操作符 | 含义 |
|---|---|
| and | 与 |
| or | 或 |
| not | 非 |
-
and查询id小于10,并且number的前两个字符是10的记录
select * from user where id<10 and number like '10%'; -
orselect * from user where id<20 or number like '10%'; -
notselect * from user where id not in(1,2,3,100);
4.2.4、排序
-
使用
order by进行排序 -
支持别名排序
-
支持多列排序(当前一个列中存在多个相同的值时)
-
asc升序 -
desc降序 -
order by 子句在 select 语句的结尾
select * from user order by id; select * from user order by id desc; select * from user order by id asc; select * from user order by id,age asc;

浙公网安备 33010602011771号