MySql对表的基本操作

  • 创建表数据

  • create table 表名(字段名_ 数据类型 约束条件,…);(其中约束条件可选)
    注意:
    1、必须给定表名,且不能使用SQL语言中的关键字
    2、必须给字段命名,且规定好数据类型,如果创建对个列用逗号隔开
    3、Primary key:关键字用于定义列为主键约束
    Auto_increment:定义列为自增的属性,一般用于主键,数值会自动加1(自动增长约束)
    not null:不为空约束
    unique:唯一约束

  • 显示当前数据库中的表
    show tables;

  • 查看指定表的结构
    desc 表名;

  • 修改表名
    alter table 旧表名 rename to 新表名;

  • 修改字段数据类型
    alter table 表名 modif 字段名 新数据类型

  • 修改字段名
    alter table 表名 change 旧字段名 新字段名 新数据类型;

  • 增加字段
    alter table 表名 add 新字段名 新数据类型 约束条件/[可选] first/alter 已有的字段/[可选];(first:最前 after:指定为后)

  • 删除字段
    alter table 表名 drop 字段名;

  • 对表中数据的基本操作

  • 往表里面插入数据
    insert into 表名(字段名1,字段名2,…)values(值1,值2,…);

  • 查询数据
    select * from 表名;(* :代表所有)

  • 查询单个或多个字段内的数据
    select 字段名1,字段名2,… from 表名;

  • 带有条件的查询
    select * from 表名 where 字段名=条件;

  • 使用in关键字查询指定记录
    select * from 表名 where 字段名 in(条件);(可有多个条件,用逗号隔开)

  • 使用Not in 关键字查询指定记录
    select * from 表名 where 字段名 Not in(条件);

  • 更改数据(修改数据)
    update 表名 set 字段名=所更改的 where 主键列=指定列;

  • 清除数据(删除数据)
    delete from 表名 where 主键列=指定列;

  • 带between and的范围查询
    select */字段名 from 表名 where 指定字段的名字 between 值 and 值;

  • 带like的字符匹配查询
    select */字段名 from 表名 where 指定字段 like 想要匹配的值;

  • 带有%和_结合like的查询

  1. select */字段名 from 表名 where 指定字段 like 想要匹配的值;
  2. select */字段名 from 表名 where 指定字段 like _ 想要匹配的值;
  • 查询空值
    select */字段名 from 表名 where 指定字段 is null;

  • 查询非空值
    select */字段名 from 表名 where 指定字段 is Not null;

  • 使用and实现多条件查询
    select */字段名 from 表名 where 字段名=值1 and 值2;

  • 使用or实现多条件查询
    select */字段名 from 表名 where 字段名=值1 or 值2;

  • 筛选重复的记录
    select distinct 字段名 from 表名;

  • 对查询结果单列排序
    select */字段名 from 表名 order by 排序字段;

  • 对查询结果多列排序
    select */字段名 from 表名 order by 排序字段1,排序字段2;
    (选排序第一个,然后排序后面的,从小到大,每个字段后面都要加上desc)

  • 指定排序的顺序
    select */字段名 from 表名 order by 排序字段 desc/asc;
    (desc——从大到小,asc——从小到大)

  • 分组查询(将相同的数据放入一组)

  1. select 字段名 /* ,count(/字段名) as 别名 from 表名 group up 分组字段;
    (count(
    /字段名)该函数是显示该组中有多少条聊天记录)
  2. select 字段名,group _ concat(字段名) as 别名 from 表名 group by 分组字段;
    (group _ concat(字段名) 显示该组中指定字段的数据)
  • 使用having过滤分组
    select 字段名1,group _ concat(字段名2) as 别名 from 表名 group by 字段名 having count(*/字段名2)>指定数;
    (having是二次分组 判断大于指定数的记录)
  • 分组后统计
    select 字段名,count(*) as 别名 from 表名 group by 分组字段 with rollup;
  • 使用limit限制查询数量
    select * from 表名 limit N,M;
    (显示从N+1行开始,总共显示M条记录(N从0开始))
  • 使用集合函数查询
  • sum()求和函数的使用:
    select sum(字段名) as 别名 from 表名;
  • 求平均值函数
    select avg(字段名) from 表名:
  • avg函数和group by一起使用每个分组的平均值:
    select 分组字段,avg(求平均值字段) from 表名 group by 分组字段;
  • max()函数求指定列的最大值:
    select max(指定列) from 表名;
  • max函数和group by一起使用求每个分组的最大值:
    select 分组字段,max(求最大值字段) from 表名 group by 分组字段;
  • 使用min()函数指定列最小值:
    select min(指定列) from 表名;

猜你喜欢

转载自blog.csdn.net/qq_40744061/article/details/83902668