mysql

2024-05-11  本文已影响0人  不返y

SQL

数据库相关

show databases;展示所有数据库

create database [if not exists] 【数据库名】; 新建数据库

drop database [if exists] 【数据库名】; 删除数据库

use 【数据库名】; 使用数据库

select database(); 查看当前使用的数据库


表相关

表的操作需要先选择数据库后使用,

创建表:

create table 【表名】(
  【字段1】【类型1】[【comment】【注释1】],
  【字段2】【类型2】[【comment】【注释2】],
  【字段3】【类型3】[【comment】【注释3】]
)[【comment】【表注释】];

drop table 【表名】 删除表

describe 【表名】; 查看表的信息

show create table student;查看建表语句的信息

alter (修改表的操作)相关语法:

添加一个字段(默认放在所有字段的最后面)

alter table 【表名】
    add【字段】【类型】[【comment】【注释】];

添加一个字段,指定放在开头

alter table 【表名】
    add【字段】【类型】[【comment】【注释】] frist;

添加一个字段,指定放在某个字段后面

alter table 【表名】
    add【字段】【类型】[【comment】【注释】] after 【字段(添加的字段将被放在这个字段后面,这个字段是表里已经有的)】;

修改一个字段

alter table 【表名】
    modify【字段】【类型】[【comment】【注释】];

删除一个字段

alter table 【表名】
    drop【字段】;

一些类型:

字符串 char() varchar()

1字节 tinyint

约束:

非空约束:not null

唯一约束: unique

主键约束: primary key //非空且唯一

默认约束: default

外键约束: foreign key //保证两表数据一致与完整

语法:alter table 【表名】 add constraint 【外键名】 foreign key 【外键字段名】 references 【主表字段名】;

desc 【表名】; 展示表信息

show create table 【表名】; 展示创建表时的信息

drop 【表名】 [if exists]; 删除表

truncate table 【表名】; 删表并重新创建

alter table 【表名】 rename to 【新表名】; 修改表名


字段定义相关

alter table 【表名】 add 【字段】【类型】[【comment】【注释】]; 添加字段定义

alter table 【表名】 drop 【字段】; 删除字段定义

alter table 【表名】 modify 【字段】 【新类型】; 修改字段类型

alter table 【表名】 change【字段】 【新字段】 【新类型】[【comment】【新注释】]; 完全改变字段


字段的增删改

insert into 【表名】 (字段1,字段2,...) values (值1,值2,...),(值1,值2,...); 增加数据

全部字段时,(字段1,字段2,...)可用 ‘ * ’ 代替

update 【表名】 set 【字段1】=【值1】,【字段2】=【值2】[where 【条件】]; 修改数据

delete from 【表名】 [where 【条件】]; 删除数据


字段查找相关

语法:

select 【查找的字段】 from 【表名】 
[where 【条件】] 
[group by 【用于分组的字段】[ having 【分组后条件】] ]
[order by 【用于排序的字段1】 【排序方式1】,【用于排序的字段2】 【排序方式2】]
[limit 【起始索引(当前展示的页,默认为0,即第一页)】 【查询记录数(每页的数据数)】

执行顺序:from->where->groupBy->having->select->orderBy->limit


1.条件

写在【条件】【分组后条件】中

不等于: != <>

空: is null

非空:is not null

and &&

or ||

数据在...中:数据 in (a,b,c)

模糊匹配

_ :一个字符

%:任意个字符

在A和B之间的信息:信息 between A and B

2.函数

写在【查找的字段】中

数量 最大值 最小值 平均值 求和
count() max() min() avg() sum()

3.排序

写在【排序方式】中

不写排序方式:默认升序

升序 asc

降序 desc


多表查询

隐式内连接:select 【字段列表】 from 【表1】,【表2】 where 【条件】;

显式内连接:select 【字段列表】 from 【表1】 [inner] join 【表2】 on 【条件】;

左外连接:select 【字段列表】 from 【表1】 left [outer] join 【表2】 on 【条件】;

右外连接:select 【字段列表】 from 【表1】 right[outer] join 【表2】 on 【条件】;

--》:SQL语句中的select系列可以嵌套使用

上一篇 下一篇

猜你喜欢

热点阅读