• mysql 基础语法掌握~ This is just the beginning.


    create database 数据库名;

    drop database 数据库名;

    use 数据库名;

    create table table_name ( column_name, column_type ); //创建表
    //column_type
    /**
    * 数值、日期/时间和字符串 三大类型
    * 数值 范围
    tinyint (-128, 127)
    smallint (-32 768,32 767)
    mediumint (-8 388 608,8 388 607)
    intinteger (-2 147 483 648,2 147 483 647)
    bigint (-9 233 372 036 854 775 808,9 223 372 036 854 775 807)
    float (-3.402 823 466 E+38,-1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38)
    double (-1.797 693 134 862 315 7 E+308,-2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308)
    * 字符串
    char 0-255字节 定长字符串
    varchar 0-65535 字节 变长字符串
    tinyblob 0-255字节 不超过 255 个字符的二进制字符串
    tinytext 0-255字节 短文本字符串
    blob 0-65 535字节 二进制形式的长文本数据
    text 0-65 535字节 长文本数据
    mediumblob 0-16 777 215字节 二进制形式的中等长度文本数据
    mediumtext 0-16 777 215字节 中等长度文本数据
    longblob 0-4 294 967 295字节 二进制形式的极大文本数据
    longtext 0-4 294 967 295字节 极大文本数据
    */

    drop table table_name; 删除表

    修改某一条数据
    update student set sex='男' where id=4;

    删除数据
    delete from student where id=5;

    insert into table_name (对应的列表名称) values (对应的值); 向表中添加数据
    //多条数据擦汗如的话 需用逗号把值隔开
    例如: insert into table_name (对应的列表名称) values (对应的值),(对应的值),(对应的值) ;

    select 列名儿/星号(多个,逗号隔开) from 表名儿; 查询数据

    select 列名儿/星号(多个,逗号隔开) from 表名儿 where (过滤条件) and (链接其他条件) // or (选择过滤);

    select 列名儿/星号(多个,逗号隔开) from 表名儿 where (过滤条件) like '%含有的字符%' and (链接其他条件) // or (选择过滤);
    //引号必须要加
    //百分号就相当于 任意字符串 中间是要过滤的字符 可以理解为 含有****字符

    select 列表名儿 from 表名儿 union all / union select 列表名儿 from 表名儿;
    union // 链接两个或多个语句 输入到一个返回结果中 且 返回的结果 不重复
    union all // 链接的后的结果全部显示出来 不去重

    select * from 表名 order by 列名(,逗号隔开,可以有多个) asc(升序) / desc(降序);

    select 列名 from 表名 group by 列名;
    可以用到的聚合函数有 avg(求平均值) sum(求和) count(记数) max(最大) min(最小)
    count 可以结合 having 语句来实现删除重复数据
    select count(*) from table_name group by (列表名) having > 1;

    select 列名 from 表名 group by 列名 with rollup;
    在 合并分组的基础上继续 求出总和

    select coalesce(列名, '代替的名字') from 表名 group by 列名 with rollup;
    基于 rollup 计算得来的 综合 名字一般 为 null
    coalesce(name, '总数') means: 将名字为空的name, 也就是最后一行计算的总和的名字 改为 总数。
    此处 如果名字不为空 则不能替换 只能替换为null的

    链表查询

    <inner join 选择的是公共部分> 这里可以用
    select a.列名,b.列名(选择任何你想要的列数据(注意 此处是两个表的数据都可以的)) from 表名 a(代替名) inner join 表名 b(代替名,和前面一致) on a.列表名 = b.列表名;

    <left join> 左表里的所有数据会被查询出来 右表无数据对应 显示的null
    select a.列名,b.列名(选择任何你想要的列数据(注意 此处是两个表的数据都可以的)) from 表名 a(代替名) left join 表名 b(代替名,和前面一致) on a.列表名 = b.列表名;

    <right join> 右表里的所有数据会被查询出来 右表无数据对应 显示的null
    select a.列名,b.列名(选择任何你想要的列数据(注意 此处是两个表的数据都可以的)) from 表名 a(代替名) right join 表名 b(代替名,和前面一致) on a.列表名 = b.列表名;

    查询表中某字段为空/不为空的值
    select * from 表名 where 列表名 is null;
    select * from 表名 where 列表名 is not null;

    正则查找
    select * from 表名 where 列表名 REGEXP '正则规则';

    对存在的数据库表进行增删改;

    alter table 表名 add 列名 该列类型 (可以跟 first / after 列名 表示插入列的位置);

    alter table 表名 drop 列名;

    alter table 表名 modify 列名 字段类型; //只修改字段类型
    alter table 表名 modify 表名 修改的类型 not null default 100;

    alter table 表名 change 表名 修改后的表名 对应的类型; //连着表名一起修改

    修改字段默认值(只有修改默认值的时候用到alter)
    alter table 表名 alter 表名 set default 1000;

    修改数据库表名
    alter table 表名 以前的名字=修改后的名字;

    防止数据重复
    建表的时候设置
    指定字段 primary key(主键) 或者 unique(唯一) 索引

    如果我们设置了唯一索引,那么在插入重复数据时,SQL语句将无法执行成功,并抛出错。
    insert ignore into //插入的数据如果重复,就忽略插入的数据,数据库中保留 老数据

    读取数据的时候 过滤重复数据
    select distinct 列名 from 表名; / 使用 group by 来处理

    建立新的表格 来存储 不重复的数据
    create table table_name select 列表名 from 表名 group by (要获取的列表名);

    查询第i条以后到第j条的数据(不包括第i条)
    //两个数字
    select * from student limit 2,5; 显示从第三条数据开始显示五条数据

    //一个数字的时候
    select * from student limit 3; 获取前三条数据;

  • 相关阅读:
    .Net Core实现下载多个文件并压缩打包
    VS上使用Docker调试编译net core项目时卡在 vsdbgvs2017u5 exits,deleting.
    spring boot actuator监控详细介绍
    数仓知识
    layui使用 弹窗 layer
    Spring配置数据源(连接池)
    Spring配置文件-引入其他配置文件(分模块开发import)&Spring相关API
    Spring配置文件-Bean标签配置
    事务的四大特征&事务隔离级别
    事务
  • 原文地址:https://www.cnblogs.com/929LF/p/9035908.html
Copyright © 2020-2023  润新知