当前位置:Gxlcms > 数据库问题 > MySql入门

MySql入门

时间:2021-07-01 10:21:17 帮助过:23人阅读

    校对规则(collation):是在字符集内用于比较字符的一套规则

  查看所有数据库  show databases

  查看字符集(查看数据库定义)  show create database 数据库名 

  删除数据库  create database 数据库名

  修改数据库字符集  alter database 数据库名 character set 字符集

  切换数据库  use 数据库名

  查看正在使用的数据库  select database();

  2.2  表级操作

  •   创建表  
create table 表名(
        列名 类型 约束,
        列名 类型 约束,
        列名 类型 约束
    );
  •   查看表

  查看所有的表  show tables;

  查看表的定义结构(查看表的字段) desc 表名;

  查看建表语句(不重要)  show create table 表名 

  •   修改表

 

增加一列;alter table 表名 add 字段名 类型 约束;

 

 

修改列的类型约束; alter table 表名 modify 字段 类型 约束 ;

 

 

修改列的名称,类型,约束;alter table 表名 change 旧列 新列 类型 约束; 新列明必须指定类型

 

 

删除一列; alter table 表名 drop 列名;

 

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

  •   删除表

  drop table 表名;

  2.3  数据级操作

  

  插入数据

insert into 表名(列,列..) values(值,值..);
insert into 表名 values(值,值....)有多少列values后面就要写多少个值,哪怕你要为空你也得写null。

  

更新记录(如果不加条件,就更新所有行的数据)

    update 表名 set 字段 = 值 ,字段 = 值 [where 条件]

删除记录(表还在)

delete from 表名 [where条件];如果没加条件相当于将表中的数据全部删除。
truncate table 表名;将表中的所有数据都删除

查询记录(重点中的重点,难点)

select [列名,列名] [*] [聚合函数][distinct 字段] from 表名 [WHERE --> group by -->having--> order by]

*聚合函数不能用在where条件中

? count(*|字段);统计指定列不为NULL的记录行数,一般用于统计表中的总数据条数。为了统计数据的准确性,括号中传入不能为空的列的列名或者 *

? 如果要统计表中的总数据条数,那么count( *|不能为空的字段名)

? sum();计算指定列的数值和,如果指定列类型不是数值类型,那么计算结果为0

? max();计算指定列的最大值,如果指定列是字符串类型,那么使用字符串排序运算

? min();计算指定列的最小值,如果指定列是字符串类型,那么使用字符串排序运算

? avg();计算指定列的平均值,如果指定列类型不是数值类型,那么计算结果为0

*where和having的区别

  • 1.having是在分组后对数据进行过滤.where是在分组前对数据进行过滤

  • 2.having后面可以使用聚合函数,where后面不可以使用聚合函数

  • 3.having后面的条件中只能出现分组的字段名或者是你用到的聚合函数

  • 4.WHERE是分组前记录的条件,如果某行记录没有满足WHERE子句的条件,那么这行记录不会参加分组;而HAVING是对分组后数据的约束。

顺序: select...from...where...group by...having...order by...limit a,b(解释:limit a,b是分页查询);

MySql入门

标签:rdbms   and   更新   lan   tps   rdb   开发   更新记录   expand   

人气教程排行