0

0

5分钟学会mysql基本操作

coldplay.xixi

coldplay.xixi

发布时间:2020-12-09 17:29:52

|

3167人浏览过

|

来源于CSDN

转载

mysql视频教程栏目介绍如何快速学会mysql基本操作

5分钟学会mysql基本操作

相关免费学习推荐:mysql视频教程

文章目录

  • 一、SQL是什么?
    • 分类:
  • 二、关于数据库CRUD操作
    • 1.操作表list:
    • 2.对表内数据进行操作:
      • a.查询
      • b.where条件:
  • 三、查询
    • 1. 排序查询
    • 2. 聚合函数(列的计算)
    • 3. 分组查询
    • 4. 排序查询
  • 四、约束
    • 1.非空约束:not null
    • 2.唯一约束
      • 实例操作:
    • 3.主键约束:primary key
    • 4.自动增长:auto_increment
  • 五、总结
      • 错误实例

一、SQL是什么?

structured Query Language:结构化查询语言

分类:

1) DDL(Data Definition Language)数据定义语言
用来定义数据库对象:数据库,表,列等。关键字:create, drop,alter 等
2) DML(Data Manipulation Language)数据操作语言
用来对数据库中表的数据进行增删改。关键字:insert, delete, update 等

3) DQL(Data Query Language)数据查询语言
用来查询数据库中表的记录(数据)。关键字:select, where 等
4) DCL(Data Control Language)数据控制语言(了解)
用来定义数据库的访问权限和安全级别,及创建用户。关键字:GRANT, REVOKE 等

二、关于数据库CRUD操作

#Createcreate database hzyc;create database if not exists hzyc98 character set gbk;#Retrieveshow databases;show create database hzyc98;#Updatealter database hzyc98 character set gbk;#Deletedrop database hzyc98;drop database if exists hzyc98; #查看当前使用的数据库select database();show tables;use hzyc98

1.操作表list:

表名/表头为:zoomlist

#查show tables; -- show tables_in_hzyc98desc zoomlist;#增create table zoomlist (
	Name  varchar(30),
	Age	  int,
	ID	  int,
	Height double(5,1))#删drop table if exists zoomlist;#改alter table zoomlist rename to newzoomlist;alter table zoomlist character set gbk;alter table zoomlist add Name varchar(20);#加列alter table zoomlist change Age newAge int;alter table zoomlist modify Age char(8);alter table zoomlist drop Name;/*设置类型:*/
 - int、double(5,1)、varchar(20) 
 - date 	#yyyy-MM-dd
 - datetime #yyyy-MM-dd HH:mm:ss 
 - timestamp#时间戳 yyyy-MM-dd HH:mm:ss

2.对表内数据进行操作:

#除了数字,其他都需要引号来赋值insert into zoomlist (Name, Age, ID, Height) value('美洲豹',5,'20201207',3.2);insert into zoomlist ('美洲豹',5,'20201207',3.2);#删除delete from zoomlist where [条件];delete from zoomlist;TRUNCATE TABLE zoomlist;#修改update zoomlist set Name = '大笨象' Age = 12 where address = '深圳';update zoomlist set address = '深圳';

a.查询

#查询#尽量不要用 * 先desc一下表里面有啥,然后在决定展示什么东西。SELECT * FROM zoomlist; SELECT Name,Age FROM zoomlist;	 --只显示某个列,方便查看!SELECT DISTINCT Name FROM zoomlist; --去除结果中[完全重复]的SELECT Name,score1,score2,scroe1+scroe2 FROM zoomlist;--as:自定义名字展示,也可以不写asSELECT Name,scroe1+IFNULL(scroe2,0) 总分 FROM zoomlist; --ifnull遇到没有值的直接给赋值为0SELECT Name,score1,score2,scroe1+IFNULL(scroe2,0) AS 总分 --显示表头FROM zoomlist,peoplelist; --从zoomlist、peoplelist里面获取

b.where条件:

* > 、< 、<= 、>= 、= 、!=、<>--不等号* and、or、not --关键字比&&、||、!好用推荐* BETWEEN...AND --范围内都符合就行* IN( 集合) --特定值的范围* LIKE:模糊查询(1)_:单个任意字符;(2)%:多个任意字符* IS NULL例子:select Name, Age from Student where age between 12 and 20;select Name, Age from Student where age in (12,14,16,18);select Name, Age from Student where name like '%牛%'; --查名字里面包含了牛的学生select Name, Age from Student where name is not null; -- 查询学生:名字空的不查

三、查询

1. 排序查询

select * from employee order by age;select * from employee order by age asc; --升序select * from employee order by age desc; --降序select * from employee order by age desc height desc; --第一个一样的时候,才会用第二个方法排序(age降序,身高降序)

2. 聚合函数(列的计算)

排除了null数据,并且有null的数据就不参与计算,不会报错!

  1. count:统计个数
  2. min、max、sum、avg:求值
select count(*) from student;select count(ifnull(age,20)) from student; select count(age) from student;--如果没有就不记录select count(id) from student; --我们一般选用主键来统计个数select max(age) from student;select min(age) from student;select sum(age) from student;select avg(age) from student;

3. 分组查询

group by 之后就是两个不同的组别了,他们不能再去查看一个独立的个体了。

  • 分组之后查询的字段:分组字段、聚合函数。
  • where和having的区别?  
    • where在分组前限定,having在分组之后限定;
    • where不符合条件的不参与分组,having不符合条件不会显示;
    • 只有having可以后跟聚合函数判断。
select sex,count(name) from employee group by sex having count(name)<6;select sex,count(name) from employee where name = '张四' group by sex ;

4. 排序查询

limit是一个MySQL的方言,用于分页

SELECT * FROM student LIMIT 0,5; -- 第1页,从0索引开始,读5个数据SELECT * FROM student LIMIT 7,10; -- 第2页,从7索引开始(第8个数据),读10个数据

四、约束

  • 约束:
    1. 主键约束:primary key
    2. 非空约束:not null
    3. 唯一约束:unique
    4. 外键约束:foreign key

1.非空约束:not null

-- 建表时添加非空约束:
 create table employee(
 	name char(30),
 	sex char(8) not null
 )
 alter table employee modify sex char(8) not null; --添加非空约束
 alter table employee modify sex char(8); --破除非空约束

非空约束实例

宽维企业网站管理系统4.0
宽维企业网站管理系统4.0

宽维企业网站管理系统功能说明宽维系列网站管理系统全面免费,个人和商业应用均免费。宽维企业网站管理系统是基于Php+MySql技术开发的企业电子商务平台,全后台操作,无需学习网页制作等知识。前台智能生成页面,可以方便地在线管理、维护、更新您的企业网站。宽维企业网站管理系统安装简单快捷,5分钟就可以安装完成。1 栏目管理方便灵活:可以发布和管理您需要的任何内容的个性栏目。内置数十个功能发布模型,并可以

下载

2.唯一约束

只可以有一个null值,不能再多了;
删除约束只可以用drop index来删除unique约束

-- 建表时添加唯一约束:
 create table employee(
 	name char(30),
 	sex char(8),
 	score int unique --分数要唯一
 )
 --添加唯一约束alter table employee modify name char(8) unique;
 --破除唯一约束-- alter table employee modify sex char(8); 不可用--破除name身上的unique约束用drop index除去索引alter table employee drop index name;

实例操作:

唯一约束不可以直接modify删除
drop删除unique约束成功

3.主键约束:primary key

一个表只有一个primary key,非空且唯一
做记录的唯一标识,相当于index

-- 建表时添加主键约束:
 create table employee(
 	id int  primary key, --给id加上主键约束
 	name char(30),
 )
 --添加唯一约束alter table employee modify id int primary key;
 --破除唯一约束-- alter table employee modify id int; 不可用!--破除id身上的primary key约束只能用drop primary keyalter table employee drop primary key;

4.自动增长:auto_increment

只对数值有用,而且一般可以放给主键做自动增长

-- 建表时添加auto_increment:
 create table employee(
 	id int auto_increment, --给id加上auto_increment
 	name char(30),
 )
 --添加auto_increment,自动从1开始alter table employee modify id int auto_increment;--设置初值alter table employee auto_increment = 100;
 --破除auto_incrementalter table employee modify id int;

五、总结

我们学习了SQL是什么,做了一个简单的入门,也列举了一些MySQL的基本操作,还有查询、约束是怎么一回事。

但是我也是刚刚才接触MySQL,所以基本的操作手还比较生,要多学多练多去实践才能出真知。

在之后我们还会学习到MySQL的多重关系、多表查询、事务(还不太清楚是什么)、JDBC各个语句、数据库连接池druid、JDBCTemplate……还有好多东西要学,但是现在的任务还是在于把基本的东西梳理好,把基础巩固了才是硬道理!!!

错误实例:

如添加数据的时候不写列名,那必须给所有列值,不然报错


相关专题

更多
数据分析工具有哪些
数据分析工具有哪些

数据分析工具有Excel、SQL、Python、R、Tableau、Power BI、SAS、SPSS和MATLAB等。详细介绍:1、Excel,具有强大的计算和数据处理功能;2、SQL,可以进行数据查询、过滤、排序、聚合等操作;3、Python,拥有丰富的数据分析库;4、R,拥有丰富的统计分析库和图形库;5、Tableau,提供了直观易用的用户界面等等。

675

2023.10.12

SQL中distinct的用法
SQL中distinct的用法

SQL中distinct的语法是“SELECT DISTINCT column1, column2,...,FROM table_name;”。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

319

2023.10.27

SQL中months_between使用方法
SQL中months_between使用方法

在SQL中,MONTHS_BETWEEN 是一个常见的函数,用于计算两个日期之间的月份差。想了解更多SQL的相关内容,可以阅读本专题下面的文章。

346

2024.02.23

SQL出现5120错误解决方法
SQL出现5120错误解决方法

SQL Server错误5120是由于没有足够的权限来访问或操作指定的数据库或文件引起的。想了解更多sql错误的相关内容,可以阅读本专题下面的文章。

1084

2024.03.06

sql procedure语法错误解决方法
sql procedure语法错误解决方法

sql procedure语法错误解决办法:1、仔细检查错误消息;2、检查语法规则;3、检查括号和引号;4、检查变量和参数;5、检查关键字和函数;6、逐步调试;7、参考文档和示例。想了解更多语法错误的相关内容,可以阅读本专题下面的文章。

356

2024.03.06

oracle数据库运行sql方法
oracle数据库运行sql方法

运行sql步骤包括:打开sql plus工具并连接到数据库。在提示符下输入sql语句。按enter键运行该语句。查看结果,错误消息或退出sql plus。想了解更多oracle数据库的相关内容,可以阅读本专题下面的文章。

674

2024.04.07

sql中where的含义
sql中where的含义

sql中where子句用于从表中过滤数据,它基于指定条件选择特定的行。想了解更多where的相关内容,可以阅读本专题下面的文章。

566

2024.04.29

sql中删除表的语句是什么
sql中删除表的语句是什么

sql中用于删除表的语句是drop table。语法为drop table table_name;该语句将永久删除指定表的表和数据。想了解更多sql的相关内容,可以阅读本专题下面的文章。

409

2024.04.29

php源码安装教程大全
php源码安装教程大全

本专题整合了php源码安装教程,阅读专题下面的文章了解更多详细内容。

74

2025.12.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
MySQL 教程
MySQL 教程

共48课时 | 1.6万人学习

MySQL 初学入门(mosh老师)
MySQL 初学入门(mosh老师)

共3课时 | 0.3万人学习

简单聊聊mysql8与网络通信
简单聊聊mysql8与网络通信

共1课时 | 779人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号