常用MySQL语句

1、库操作

新增  create database

查看  show databases

删除  drop database

选择  use 

2、表操作

(1)新增一张表

create table 表名(
字段1 字段类型 约束,
字段2 列类型 约束
);

字段类型有以下:

  整数:tinyint、smallint、mediumint、int、bigint

  小数:float、double、decimal

  字符:char、varchar

  日期:year、date、time、datetime

常用约束:primary key(主键,主键唯一且不为空)、not null、default、unique

(2)查看表结构 :desc 表名

(3)查看 所有表:show tables

(4)删除表: drop table 表名

(5)表中某一字段的操作

    新增:alter table 表名 add 字段 字段类型 约束 frist/after 列名;

    删除:alter table 表名 drop 列名;

3、数据操作

(1)新增

insert into 表名 (字段1,字段2)values (值,值);
insert into 表名 values (值,值);

(2)删除

 delete from 表名;

(3)修改

 update 表名 set  字段=值;

(4)查询

select 字段 from 表 where 条件 group by 列名 having 条件(从分组的结果提取)order by 字段 limit m(m为限制结果数量)

where 常用条件:

  比较(<,>,=)、and、or、not、between...and、in、not in、is null、is not null

  模糊查询 like,和通配符一起使用,常用的有:%  任意字符, _  一个字符

group by 分组语句,常用分组条件:

  max(字段)、min、sum、avg、count

  注意:分组后查询的数据只能是 max / min / sun / avg / count,或者是分组的字段,查询其他数据无意义,数据不准确。

having   从分组的结果上进行二次筛选

order by 对查询结果进行排序,常用的有 : order by 字段 desc ,order by 字段 asc 

查询结果去重关键字 distinct:

  select distinct 字段1,字段2 

  select count(distinct 字段1) 先去重,再计数

多表查询(其中  tableA.字段 和 tableB.字段 相同)

  1.使用where 条件

select * from tableA,tableB where tableA.字段=tableB.字段;

2.左连接,以左边表为基础,左边的表符合过滤条件的都筛选出来,右边的表若能匹配的记录,直接匹配,否则补NULL。

select * from tableA left join tableB on tableA.字段=tableB.字段 Where ...

3.右连接:以右边表为基础,右边的表符合过滤条件的都筛选出来,左边的表若能匹配的记录,直接匹配,否则补NULL。

select * from tableA right join tableB on tableA.字段=tableB.字段 Where ...

相关推荐