MySQL入门(终结)- 常用语句简单总结

本文总结了MySQL的基础知识,包括SQL的分类、数据类型、DQL查询、分组函数、简单的数据库操作以及事务特性。重点介绍了数据类型如varchar、char、int等,以及DQL语句和事务在数据库管理中的应用。
摘要由CSDN通过智能技术生成

MYSQL简单总结

SQL的分类

数据查询语言(DQL - data querylanguage):select(针对表中数据)

数据操纵语言(DML - datamanipulation language):insert、delete、update(针对表中数据)

数据定义语言(DDL - data definitionlanguage):create、drop、alter(针对表的结构)

事务控制语言(TCL - transactionalcontrol language):commit、rollback

数据控制语言(DCL - data controllanguage):grant、revoke

 

数据类型

- varchar

* 可变长度字符串:根据实际长度动态分配储存空间

* varchar(3)表示存储的数据不能超过3个字符长度

- char

* 定长字符串:不用判断,效率高

* varchar和char相比:

- 都是字符串类型

- varchar比较只能,可以根据实际数据长度分配空间,比较节省空间,但是在分配的时候需要执行相关的判断程序,效率较低

- char不需要动态分配空间,所以执行效率很高,但是可能会导致空间浪费。

- 若字段中数据不具备伸缩性,如性别,建议采用char类型存储

- 若字段数据具备很强伸缩性,建议采用varchar类型存储

* char(3) 表示存储的数据不能超过3个字符长度

- int

* 整数型

* int(3)表示最大可以存储999

- bigint

* 长整型

* 对应java程序中的long类型

- float

* 浮点型单精度

- double

* 浮点型双精度

* double(7,2),表示7个有效数字,两个小数位

- date

* 日期类型

* 在实际开发中为了通用,所以日期类型一般不使用,一般采用字符代替

- blob

* Binary LargeObject  二进制大对象

* 专门存储图片、声音、视频等数据

* 数据库表中存储一个图片是很常见的,但是存储一个比较大的时间是很少的,一般都是提供一个视频的链接地址

- clob

* CharacterLarge Object  字符大对象

* 可以存储比较大的文本,4G+的字符串可以被储存

- 其他...

 

DQL

格式:SELECT <变量名> FROM <表名> WHERE <条件> GROUP BY <变量名> HAVING <条件> ORDER BY <变量名> limit a,b; a,b为数字

select ename from emo where ename = trim(‘  SMITH  ‘);

select empno,ename,sal from emp where sal between 3000 and 5000;

select ename,sal fromemp where sal not in (1500,5000);

select job,avg(sal)from emp group by job having avg(sal)> 1500;

select ename,salfrom emp order by sal desc limit 2,7;

 

分组函数:count、sum、avg、max、min

分组函数不能直接使用在where语句中

select sal from emp where sal > avg(sal)

select sum(sal) from emp;

select avg(sal) from emp;

select max(sal) from emp;

select min(sal) from emp;

select count(ename) from emp; (count(字段),当前该字段不为null的计数)

select count(*) from emp;【14个】

select count(*) from emp where comm is null;【10个】(count(*)是满足某个条件的计数)

 

简单语句

show tables; 查看表格

desc dept;查看表结构

show databases;查看所有database

show tables from world; 查看其它库的表

show create table city;查看建表语句

select database();查看当前所使用数据库名称

select version();查看版本

 

创建数据库

create database bjpowernode;

use database bjpowernode;

drop database bjpowernode;

 

连接

select e1.ename empname,e2.enameleadername,from emp e1 inner join emp e2 on e1.mgr = e2.empno;

select e.ename,d.dnamefrom emp e right join dept d on e.deptno= d.deptno;

select e.ename,d.dnamefrom dept d left join emp e on e.deptno= d.deptno

 
创建表格

drop table if exists t_user;

create table t_user(

           idint(10),

           namevarchar(32) not null,

           emailvarchar(128),

           constraint t_user_email_unique unique(email),

           constraint t_user_id_pk primary key(id) auto_increment

);

 

增删改表的数据

insert into t_student(no) values(1);

update t_student set name = 'zhangsan'where no = 3;

delete from t_student where no = 3;

 

增删改表的结构

ALTER TABLE t_student ADD tel VARCHAR(10);

ALTER TABLE t_student DROP tel;

ALTER TABLE t_student MODIFY tel VARCHAR(20);

 

事务的四个特征(ACID)

    -原子性(A)

       *事务是最小的工作单元,不可再分

    -一致性(C)

       *事务要求所有的DML语句操作的时候,必须同时成功或者同时失败

    -隔离性(I)

       *事务A和事务B之间具有隔离

    -持久性(D)

       *是事务的保证,事务终结的标志。【内存中的数据持久到硬盘文件中】

 

关于事务的术语【不是SQL语句】

    -开启事务: start transaction

    -结束事务: end transaction

    -提交事务: commit transaction

    -回滚事务: rollback transaction

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值