一、 对数据库的操作

1. 创建一个库

create database 库名

create database 库名 character set 编码

创建带有编码的

查看编码:

2. 删除一个库

drop database 库名

3. 使用库

use 库名

4.查看当前正在操作的库

二、对数据库表的操作

1.创建一张表

create table 表名(

字段名 类型(长度) [约束],

字段名 类型(长度) [约束],

字段名 类型(长度) [约束]

);

2.查看数据库表

创建完成后,我们可以查看数据库表

show tables;

查看表的结构

desc 表名

3.删除一张表

drop table 表名

4.修改表

4.1 添加一列

alter table 表名 add 字段名 类型(长度) [约束]

4.2 修改列的类型(长度、约束)

alter table 表名 modify 要修改的字段名 类型(长度) [约束]

4.3 修改列的列名

alter table 表名 change 旧列名 新列名 类型(长度) [约束]

4.4 删除表的列

alter table 表名 drop 列名

4.5 修改表名

rename table 表名 to 新表名

4.6 修改表的字符集

alter table 表名 character set 编码

查看当前表的编码

三、对数据库表记录进行操作(修改)

1.插入记录

insert into 表名(列名1,列名2,列名3……) values(值1,值2,值3……)

insert into 表名 values(值1,值2,值3……)

1.1 插入数据中文乱码问题解决办

方式一:【不建议!】

直接修改数据库安装目录里面的my.ini文件的第57行

方式二:

set names gbk;

2.修改表记录

2.1 不带条件的

update 表名 set 字段名=值, 字段名=值, 字段名=值……

它会将该列的所有记录都更改

2.2 带条件的

update 表名 set字段名=值, 字段名=值, 字段名=值…… where 条件

3.删除表记录

3.1 带条件的

delete from 表名 where 条件

注意,删除后,uid不会重置!

3.2.不带条件的

先准备数据

insert into tbl_user values(null,’老王’,’666’);

删除操作

delete from 表名;

3.3 面试题

说说delete与truncate的区别?

delete删除的时候是一条一条的删除记录,它配合事务,可以将删除的数据找回。

truncate删除,它是将整个表摧毁,然后再创建一张一模一样的表。它删除的数据无法找回。

Delete操作演示:

Truncate操作演示

注意:delete删除,uid不会重置!而使用truncate操作,uid会重置

4.查询操作

语法:

select [distinct] *| 列名,列名 from 表名 [where条件]

4.1 简单查询

1.查询所有商品

select * from product;

2. 查询商品名和商品价格

select pname,price from product;

3.查询所有商品信息使用表别名

select * from product as p;

4.查询商品名,使用列别名

select pname as p from product

5.去掉重复值(按照价格)

select distinct(price) from product;

先准备数据:

insert into product values (null,'李士雪',38,null);

6.将所有的商品的价格+10进行显示

select pname,price+10 from product;

4.2 条件查询

1.查询商品名称为"左慈"的商品信息

2.查询价格>60元的所有商品信息

3.查询商品名称含有"士"字的商品信息

4.查询商品id在(3,6,9)范围内的所有商品信息

5.查询商品名称含有"士"字并且id为6的商品信息

6.查询id为2或者6的商品信息

4.3 排序

1.查询所有的商品,按价格进行排序(升序、降序)

2.查询名称有"士"的商品信息并且按照价格降序排序

4.4 聚合函数

1.获得所有商品的价格的总和

2.获得所有商品的平均价格

3.获得所有商品的个数

4.5 分组操作

1.添加分类id (alter table product add cid varchar(32);)

2.初始化数据

update product set cid='1';

update product set cid='2' where  pid in (5,6,7);

1.根据cid字段分组,分组后统计商品的个数。

2.根据cid分组,分组统计每组商品的平均价格,并且平均价格大于20000元。

4.6 查询总结

select  一般在的后面的内容都是要查询的字段

from  要查询到表

where

group by

having  分组后带有条件只能使用having

order by 它必须放到最后面

MySQL回顾的更多相关文章

  1. mysql 回顾小练习

    Student(id,sname,age,sex) 学生表 Course(id,cname,t_id) 课程表 SC(s_id,c_id,score) 成绩表 Teacher(id,Tname) 教师 ...

  2. MySQL 基础回顾

    mysql 回顾 数据库的设计必须满足三范式 1NF: 强调列的原子性,列不可拆分 eg: 一张表(联系人) 有(姓名,性别,电话)三列,但是现实中电话又可分为家庭电话和公司电话,这种表结构设计就不符 ...

  3. Mysql学习笔记(八)由触发器回顾外键约束中的级联选项

    近些天都没有写博客.在学习mysql的知识,通过学习和练习,也熟悉了mysql的函数.触发器.视图和存储过程.并且在实际的开发过程中也应用了一小部分.效果还是十分理想的. 今天晚上在学习触发器模仿in ...

  4. 回顾:Linux环境 Mysql新建用户和数据库并授权

    回顾:Linux环境 Mysql新建用户和数据库并授权 一.新建用户 //登录Mysql @>mysql -u root -p @>密码 //创建用户 mysql> insert i ...

  5. MySQL多表查询回顾

    ----------------------siwuxie095 MySQL 多表查询回顾 以客户和联系人为例(一对多) 1.内连接 /*内连接写法一*/ select * from t_custom ...

  6. SQL快速入门 ( MySQL快速入门, MySQL参考, MySQL快速回顾 )

    SQL 先说点废话,很久没发文了,整理了下自己当时入门 SQL 的笔记,无论用于入门,回顾,参考查询,应该都是有一定价值的,可以按照目录各取所需.SQL数据库有很多,MySQL是一种,本文基本都是SQ ...

  7. 快速回顾MySQL:简单查询操作

    利用空闲时间花几分钟回顾一下 7.1 检索数据 为了查询出数据库表中的行(数据),使用SELECE语句. 格式: # 第一种 SELECT * FROM <table_name>; # 第 ...

  8. MySQL快速回顾:数据库和表操作

    前提要述:参考书籍<MySQL必知必会> 利用空闲时间快速回顾一些数据库基础. 4.1 连接 在最初安装MySQL,可能会要求你输入一个管理登录(通常为root)和一个口令(密码). 连接 ...

  9. 回顾MySql的一些基本的增删改查

    ---恢复内容开始--- 回顾数据库的一些简单的增删查改的操作语法与注意点,来自菜鸟教程https://www.runoob.com/mysql/mysql-tutorial.html 关于数据库的操 ...

随机推荐

  1. 数据可视化之powerBI技巧(十九)DAX作图技巧:使用度量值动态分组和配色

    有了前两篇关于分组的铺垫,这篇文章就来学习一个分组的经典应用,图表的动态分组,并对分组动态配色. 假设有十几个产品,每个产品的销售额,是随着时间而变化的,想知道某个时间的每一个产品的销售额与平均销售额 ...

  2. redis入门指南(三)—— 事务、过期时间、SORT命令、消息通知与管道

    写在前面 学习<redis入门指南>笔记,结合实践,只记录重要,明确,属于新知的相关内容. 事务 1.redis中的事务由一组命令的集合组成,要么都执行,要么都不执行,同时redis的事务 ...

  3. 日志套餐篇 - log4j2 logback全量套餐

    日志套餐篇 - log4j2 logback全量套餐 前情提要: Log4j Log4j2 logback是当下主流的日志框架 slf4j则是新一代的日志框架接口,logback直接实现了slf4j接 ...

  4. GPO - AppLocker

    AppLocker can help you: Define rules based on file attributes that persist across app updates, such ...

  5. 机器学习实战---K均值聚类算法

    一:一般K均值聚类算法实现 (一)导入数据 import numpy as np import matplotlib.pyplot as plt def loadDataSet(filename): ...

  6. 关于Object.defineProperty

    讲解大致会根据下图展开     本文部分参考了书籍<你不知道的javascript>上卷 对象的定义与赋值 经常使用的定义与赋值方法obj.prop =value或者obj['prop'] ...

  7. 设计模式:interpreter模式

    理解:可以广义的理解为创造一种语言,实现该语言的解释器,然后用创造的语言编写程序 对比:如xml就是一种语言,解析xml的代码就是解释器 例子: //目标:定义4中几种命令,使用C++解析 //如下: ...

  8. C++语法小记---少见的语法之一

    很少用,列出来,便于理解和熟悉!!! // 1.单独使用位域限定符 ::xxx() //调用全局函数xxx // 2.全局重载new和delete T* tmp = (T*)(::operator n ...

  9. wpf中实现快捷键

    <Window.InputBindings> <KeyBinding Gesture="Ctrl+Alt+Q" Command="{Binding Yo ...

  10. Bug:No mapping for GET /onepill//swagger-ui.html

    SpringBoot使用Swagger2本来可以使用的,后来出现的异常No mapping for GET /swagger-ui.html,这个异常其实不用怎么解释,说白了就是找不到了. 遇到这种情 ...