MYSQL数据库常用增删改查SQL语句合集

本文详细介绍了SQL的基本操作,包括数据库管理、表结构操作、数据插入、删除、查询(包括条件、聚合、分组和排序)、分页,以及用户管理和权限控制的相关命令。通过实践可以提升SQL技能。
摘要由CSDN通过智能技术生成

 下列语句里  [  ]  括号的内容不一定要写上,需要根据需求来使用

 基本操作

show databases ;	        --查看总共有哪些数据库

create database 数据库名称 ;	--创建数据库

select database() ;	        --查看当前数据库

use 数据库名称 ;	            --切换到某数据库

show tables ;	            --查看当前数据库所有的表

desc 表名 ;	                --查询表结构,展现字段以及字段类型

show create table 表名;	    --查看字段、字段类型以及解释内容

create table 表名(		    --创建表

字段1  字段1类型 [comment '解释内容'] ,

字段2  字段2类型 [comment '解释内容'] );      --注意最后一行是没有逗号的

修改操作

alter table 表名 add 字段  类型(长度) ;            --增加表中的字段

alter table 表名 modify 字段  新的类型(长度) ;	  --修改字段类型

alter table 表名 change 旧字段名  新字段名(长度) ;  --修改字段名称和长度

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

alter table 表名 rename to 新表名 ;	--修改表名

drop table [if exists] 表名 ;	    --删除表

truncate table 表名 ;	            --删除指定表,并重新创建该表

插入操作

insert into 表名(字段名1, 字段名2, ...)  values (值1, 值2, ...) ;	 --给指定字段添加数据

insert into 表名 values(值1, 值2, ...) ; 	--给全部字段添加数据,但不推荐用这种方式,因为可能会改变表结构

insert into 表名 (字段1, 字段2, ...)  values (值1, 值2, ...) ;	--给具体字段添加数据

insert into 表名 values(值1, 值2 , ...) (值1, 值2, ...) (值1, 值2, ....) ;	--批量添加数据

 删除操作

update 表名 set 字段名1 = 值1, 字段名2 = 值2 [where 限制条件] ;	--修改字段数值,如果不加限制条件,就会修改整张表字段1和字段2的数值

delete from 字段名 [where 限制条件] ;	--删除字段数据

 查询操作

条件查询

select  字段1, 字段2, 字段3 ...  from  表名 ;	--查询表中具体字段数据

select * from  表名  [where 限制条件] ;	        --查询表中所有数据

select 字段1 [ as 别名1 ], 字段2 [ as 别名2 ]... from 表名 ;  --设置别名

select dstinct 字段列表 from 表名 ;	 --查询时会去除重复记录

select * from 表名 where 字段  in ( 条件, 条件, 条件, ... ) ;	--查询表中符合括号中任意一个条件的项

select * from 表名 where 字段 like ' _x' ;	--查询表中符合两个字并且第一位任意字符第二位为 x 的项

select * from 表名 where 字段 like ' %x' ;	--查询表中任意长度且最后一位为 x 的项

聚合查询

--在查询的时候同时对数据进行运算

select count ( * ) from 表名 ;	--统计表中有多少行数据

select max ( 字段 ) from 表名 ;	--统计表中字段里最大数值

select min ( 字段 ) from 表名 ;	--统计表中字段里最小数值

select avg ( 字段 ) from 表名 ;	--统计表中字段的平均数值

select sum ( 字段 ) from 表名 ;	--统计表中字段的总和

分组查询

select 字段 from 表名 [ where 条件1 ] group by 分组字段名 [ having, 过滤条件2 ] ;	--查询字段中符合条件1并且符合过滤条件2的项

顺序查询

select * from 表名 order by 字段 asc ;	--根据字段进行顺序查询

select * from 表名 order by 字段 ;	    --同为顺序查询 省略asc默认顺序

select * from 表名 order by 字段 desc ;	--倒序查询

select * from 表名 order by 字段1 asc, 字段2 desc ;   --顺序查询字段1,当字段1里存在相同情况时,再根据字段2进行倒叙排序

分页查询

--起始索引 = ( 查询页码 -1 ) * 每页展示记录数 ;

select * from 表名 limit 起始索引 , 展示记录数  ;

select * from 表名 limit 0 , 10 ;	--查询第一页,每页显示10条数据

select * from 表名 limit 10 , 10 ;	--查询第二页,每页显示10条数据,就为什么会是 limit 10 呢?是因为记录数从 0 开始,0 - 9条是第一页,10 - 19条是第二页,索引得从 10 开始

select * from 表名 limit 数量 ;      --只查询前几条数据

管理用户 

use mysql ;	            --由于 user 表在 mysql 库所以需要切换到 mysql 数据库

select * from user ;	--查询所有用户

create user ' 用户名 ' @ ' 主机名 ' identified by ' 密码 ' ;	    --创建用户

alter user ' 用户名 ' @ ' 主机名 ' identified with mysql_native_password by ' 新密码 ' ;	    --修改用户密码

drop user ' 用户名 ' @ ‘ 主机名 ' ;	    --删除用户

权限控制 

grant 权限列表 on 数据库名 . 表名 to ' 用户名 ' @ ' % ' ;	    --授予用户在某数据库某张表的某个权限。在没有授权之前,该用户看不到该数据库

revoke 权限列表 on 数据库名 . 表名 from ' 用户名 ' @ ' % ' ;	--撤销用户在某数据库某张表的所有权限

--数据库名和表名可以用  *  进行通配,代表所有

勤加练习才能熟练 ~

  • 14
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值