MySQL 语法总结

下面总结了一些 MySQL 语法及基础内容

MySQL 基础

SQL 语言共分为四大类:

  • 数据查询语言 DQL:SELECT、FROM、WHERE
  • 数据操纵语言 DML:INSERT、UPDATE、DELETE
  • 数据定义语言 DDL:CREATE TABLE/VIEW/INDEX 等
  • 数据控制语言 DCL:GRANT、REVOKE

DDL 操作

创建数据库

create database 数据库名;

查看数据库

show databases;

选择数据库

use 数据库名;

删除数据库

drop database 数据库名;

创建表

create table 表名(字段 类型,字段 类型);

查看表定义

desc 表名

查看表

show 表名

删除表

drop table 表名

删除字段

alter table 表名 drop 字段名

添加字段

alter table 表名 add 字段名 字段类型 [指定位置]

[指定位置] 省略是末尾,first 首,after 字段 某个字段之后

修改字段类型

alter table 表名 modify 字段名 字段类型

修改字段名

alter table 表名 change 原字段名 新字段名 字段类型

修改字段默认值

alter table 表名 alter 字段名 set default 新默认值

修改表名

alter table 表名 rename to 新表名

DML 操作

插入记录

insert into 表名(字段,字段,字段) values(数据,数据,数据) 指定字段

insert into 表名 values(数据,数据,数据) 不指定字段,数据需要一一对应

更新记录

update 表名 set 字段=数据,字段=数据 [where 语句]

删除记录

delete from 表名 [where 语句]

DQL 操作

where 子句

where 条件 or 条件 and 条件

条件运算符

=、!=、>、<、>=、<=

+、-、*、/、%

is null

is not null

between 1 and 5 在指定闭区间范围内

in(1,2,4,5) 集合中匹配

like 通配符匹配

rlike 正则表达式匹配

查看记录

select 字段 from 表名,表名 [where 语句][limit 语句]

排序

order by 字段 [asc/desc], 字段 [asc/desc] asc 升序,desc 降序

限制记录数

limit n 前 n 行

limit n,m 第 n+1 行开始 m 条

limit n,-1 第 n+1 行到结尾

连接

[select 语句] inner join 表名 on 条件 内连接,显示相交部分

[select 语句] leftjoin 表名 on 条件 左连接,左边全显示,右边显示相交

[select 语句] right join 表名 on 条件 右连接,右边全显示,左边显示相交

[select 语句] union[ALL|DISTINCT] [select 语句] 全连接,ALL 不去重,DISTINCT 去重,默认去重

子查询

where 条件 (select 语句)

DCL 操作

添加权限

回收权限

MySQL 数据类型

数据类型名数据类型字节
tinyint整型1
smallint整型2
mediumint整型3
int、integer整型4
bigint整型8
float浮点型4
double浮点型8
bit位类型1~8,位 1~64
date日期4
datetime日期时间8
timestamp时间戳4
time时间3
year1
char(m)字符串m 属于 0~255;定长;英文 1 字节,中文 2 字节;效率相对高
varchar(m)字符串m 属于 0~65535;可变长;中英文都 2 字节;效率相对低
binary(m)字符串0~m 字节的定长字符串
enum(‘w’,‘t’,‘f’)枚举类型成员个数相关,1 字节成员个数 0~255,只能选一个值
set(‘w’,‘t’,‘f’)集合类型每 8 成员占 1 字节,最多 64 成员,能选多个值

一些修饰符

unsigned:无符号

zerofill:填充 0

auto_increment:自增

常用函数

coutn(字段) 记录数

sum(字段)

max(字段)

min(字段)

upper(str)

lower(str)

abs(x)

cell(x) 大于 x 的最小整数值

floor 小于 x 的最大整数值

rand() 随机 0~1

时间相关有许多,下举点例子

now() 当前时间

hour(time) 返回小时值

下为部分选择语句

case [expr] when [value] then result1 when [value] then result2 end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值