两年

V1

2022/09/05阅读:48主题:橙心

mysql基础知识-基础概念

”种一棵树最好是十年前,其次是现在“,结合个人十多年IT基础架构领域摸爬滚打的经验来看,数据库领域潜力无限,大有可为。运维领域知识面需要广,更需要专,数据库是我选择做专做深的方向。

mysql基础概念

  • 概述

mysql是一种关系型数据库,使用一张二维表来保存数据,使用sql语言来管理和操作数据库

表中最上面的一行是表的字段,代表每一列中数据的类型和作用,第二行开始每一行是一条条数据

SQL

DDL:用于操作数据库,表结构,字段(增,删,改,查)

详细操作命令:
#DDL
show databases ;
drop database my_test;
create database my_test;
use my_test;
show tables;
describe mysql.user;
alter table my_test add address varchar(30);

#建表
create table my_test(
    id int comment '编号',
    name varchar(50comment '姓名',
    age int comment '年龄',
    gender varchar(1comment '性别'
    )comment '用户表';


#查看数据库编码
show create table my_test;

DML:操作表中数据(增,删,改,查)

详细操作命令
#DML
#插入数据
insert into my_test values ('9','张三','22','2','上海浦东'),
                           ('10','李四','23','2','上海长宁'),
                           ('11','王五','24','1','上海金桥'),
                           ('12','赵六','25','1','上海崇明'),
                           ('13','老七','26','2','上海川沙')
                           ;
#更新数据
update my_test set address='西安' where id='10' || id='12' || id='13';
UPDATE my_test SET name='赵五五' where name='赵五';

#删除数据
delete from my_test where id='9';

#查询数据
select * from my_test;

DQL:查询

详细操作命令

#DQL 基础查询
select * from my_test where name = '张三';

#查指定字段
select id,name,gender from my_test;
#查所有字段
select * from my_test;

#查性别,使用别名
select gender as '性别' from my_test;
#去重
select distinct gender as '性别' from my_test;

#查询指定范围人员
select * from my_test where name in ('zhaowu','zhaowu1','zhaowu3');

#查询名字只有4个字符
select * from my_test where name like '###-';
#查询名字以5结尾的名字
select * from my_test where name like '%5';

#分页:起始索引:(页码-1)*显示记录数
#注意:分页是方言,每种数据库不一样

#排序:order by asc/desc

#分组:select 字段 from 表名 where  group by 分组字段名 #having   分组后过滤条件
#where:分组前过滤 having:分组后过滤
#执行顺序:where > 聚合 > having

#聚合:count,max,min,avg,sum
#注意:null值不计算在内

DCL:主要用于管理用户及用户权限管控

#管理权限
-- 查询权限
show grants for 'itest'@'localhost';
-- 授予权限
grant all on mysql.* to 'itest'@'localhost';
-- 撤销权限
revoke all on mysql.user from 'itest'@'localhost';

结构化基础概念

  • 函数:数据库内置,对常用特殊场景进行处理

    • 流程函数

    • 日期函数

    • 数值函数

    • 字符串函数

  • 约束:对表字段按照特定要求进行规范

    • 检查

    • 主键

    • 外键

    • 默认

    • 唯一

    • 非空

  • 多表查询:对于复杂业务逻辑进行多表关联嵌套查询

    • 联合查询

    • 自查询

    • 外查询

    • 内查询

    • 子查询

      • 标量子查询

      • 列子查询

      • 行子查询

      • 表子查询

  • 事务:保证操作的一致性和原子性等

    • 并发事务问题

    • 四大特性ACID

作者:谷会于(转载请获本人授权,并注明作者与出处)

分类:

后端

标签:

数据库

作者介绍

两年
V1