MySql新手入门的基本操作汇总

2023-01-06 12:43:40 作者:admin

本文整理自网络,侵删。

库操作

查询

1.SHOW DATABASE; ----查询所有数据库

2.SHOW CREATE DATABASE 数据库名称; ----查询某个数据库的创建模式

3.SHOW CREATE DATABASE xxx; ----查询xxx数据库的创建模式

创建

1.CREATE DATABASE 数据库名称; ----创建数据库
注:不可以创建一个已经存在的数据库

2.CREATE DATABASE IS NOT EXISTS 数据库名称; ----判断数据库是否存在,不存在就创建

3.CREATE DATABASE 数据库名称 CHARACTER SET 字符集名称; ----创建数据库并指定字符集,一般使用utf-8

修改

ALTER DATABASE 数据库名称 CHARACTER SET 字符集名称; ----修改数据库的字符集

删除

1.drop DATABASE 数据库名称; ----删除数据库

2.drop DATABASE IS EXISTS 数据库名称; ----先判断是否存在再删除

使用

SELETE DATABASE (); ----查询当前正在使用的数据库

USE 数据库名称; ----使用指定数据库

表结构

表的查询

1.SHOW TABLES; ----查询数据库中所有的表

2.DESC 表名; ----查看指定表的结构

3.SHOW TABLE STATUS FROM 库名 LIKE ‘表名'; ----查询表字符集(like没有特别情况下和"="号是等价的)

创建表

CREATE TABLE 表名(
列名1 数据类型1 约束,
列名2 数据类型2 约束,

列名n 数据类型n约束
);

int:整数类型

  • age int

double:小数类型

  • score double(5,2)
  • price double

date:日期,只包含年月日 yyyy-MM-dd

datetime:日期,包含年月日时分秒 yyyy-MM-dd HH:mm:ss

timestamp:时间戳类型 包含年月日时分秒 yyyy-MM-dd HH:mm:ss

  • 如果将来不给这个字段赋值,或赋值为null,则默认使用当前的系统时间,来自动赋值

varchar:字符串

  • name varchar(20):姓名最大20个字符
  • zhangsan 8个字符 张三 2个字符

CREATE TABLE 要创建的表名 LIKE 被复制的表名; ----复制表

修改表

1.ALTER TABLE 表名 rename TO 新的表名; ----修改表名

2.ALTER TABLE 表名 CHARACTER SET 字符集名称; ----修改表的字符集

**3.**ALTER TABLE 表名 ADD 列名 数据类型; ----添加新的一列

4.ALTER TABLE 表名 MODIFY 列名 新列名 新数据类型; ----修改新列名和数据类型

表中删除操作

1.drop TABLE 表名; ----删除表

2.ALTER TABLE 表名 drop 列名; ----删除列

表中添加数据-insert语句

1.insert INTO 表名(列名1,列名2,…) VALUES (值1,值2,…); ----向表中添
加数据

2.select * FROM product; ----查看表中所有数据

3.insert INTO 表名 VALUES (值1,值2,值3,…); ----默认给全部列添加数据

4.insert INTO 表名 VALUES (值1,值2,值3,…),(值1,值2,值3,…),(值1,值2,值3,…); ----批量添加数据

注:

  • 列名和值的数量以及数据类型要对应
  • 除了数字类型,其他数据类型的数据都需要加引号(单引双引都可以,推荐单引)

表中修改数据-updata

update 表名 SET 列名1 = 值1,列名2 = 值2,… [where 条件];
注:

  • 修改语句中必须加上条件,如果不加条件则修改所有数据

表中删除数据-delete

delete FROM 表名 [WHERE 条件];

注:

  • 和修改数据是一样的

单表查询

查询语法:

select 字段列表 from 表名列表 where 条件列表 group by 分组字段 having 分组之后的条件 order by 排序 limit 分页限定

select 列名1,列名2,… FROM 表名; ----多个字段查询

select DISTINCT 列名1,列名2,… FROM 表名; ----去重查询,但只有所查询列都重复才会去重

select 列名1 运算符(+ - * /) 列名2 FROM 表名; ----四则运算

select 列名1,列名2,… AS 别名 FROM 表名; ----as用来起别名,简单易懂

条件查询

条件分类

符号 功能
> 大于
< 小于
>= 大于等于
<= 小于等于
= 等于
<> 或 != 不等于
BETWEEN … AND … 在某个范围之内(都包含)
IN(…) 多选一
LIKE 占位符 模糊查询 _单个任意字符 %多个任意字符
IS NULL 是NULL
IS NOT NULL 不是NULL
AND 或 && 并且
OR 或 || 或者
NOT 或 ! 非,不是

聚合函数

函数名称及其功能

函数名 功能
count(列名) 统计数量(一般选用不为null的列)
max(列名) 最大值
min(列名) 最小值
sum(列名) 求和
avg(列名) 平均值

聚合函数语法

-- 标准语法select 函数名(列名) FROM 表名 [WHERE 条件];-- 计算product表中总记录条数select COUNT(*) FROM product;-- 获取最高价格select MAX(price) FROM product;-- 获取最高价格的商品名称select NAME,price FROM product WHERE price = (select MAX(price) FROM product);-- 获取最低库存select MIN(stock) FROM product;-- 获取最低库存的商品名称select NAME,stock FROM product WHERE stock = (select MIN(stock) FROM product);-- 获取总库存数量select SUM(stock) FROM product;-- 获取品牌为苹果的总库存数量select SUM(stock) FROM product WHERE brand='苹果';-- 获取品牌为小米的平均商品价格select AVG(price) FROM product WHERE brand='小米';

排序查询

阅读剩余部分

相关阅读 >>

sql server是什么,能干什么

sql语句删除数据的方法

sql server中的聚合函数有哪些

sql优化有哪些方法

golang 数据库操作(sqlx)和不定字段结果查询

mysql中的sql_mode模式实例详解

sql中update语句的执行顺序是什么

sql是高度什么和面向什么的操作语言?

小编带你深入解析sql server索引的原理

mysql创建表添加字段注释的实现方法

更多相关阅读请进入《sql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



在线咨询 拨打电话