当前位置:网站首页>手把手教你进行Mysql查询操作
手把手教你进行Mysql查询操作
2022-08-10 06:40:00 【云涌龙游】
大家好,我是IT共享者,人称皮皮。今天给大家讲讲MySQL中的查询操作。
前言
我们在以前,大概学了一下如何通过命令创建数据库,创建表等基本操作。
但是实际上啊,至少在我的实际工作中,用到的不是太多,了解就可以。
因为我们可以通过一些可视化软件,像Navicat for MySQL等。
可以很方便的帮助我们创建数据库,创建表,修改表等操作。
Navicat for MySQL简单示例
创建数据库
使用Navicat for MySQL连接好一个Mysql服务之后。
- 右击--> 新建数据库
- 选择新建数据库信息字符集一定要选择utf8mb4 -- UTF-8 Unicode,这个表示支持存储Emoji表情。排序规则一定要选择utf8mb4_general_ci。至于为什么,我也不知道...,原谅我是个码农吧。
就这样,一个数据库创建完成了,是不是很轻松。
创建表
- 右击表--> 新建表
- 制定表结构
- 保存表(Ctrl+s)
设计表
在实际中,我们常常会更改表结构,也叫设计表
- 右击表-->设计表
- 修改表
3.保存即修改
查询
上述主要复现了一下如何通过可视化软件操作数据库,确实会比直接命令方便很多很多。
但是查询这个操作,那可视化软件就真的无能为力了。
毕竟我们不管是封装在后台还是自己的软件中。
都是要使用原生SQL的,这个是无法避免的,并且原生SQL查询是最灵活的!!!
终于迎来了最最最重要的环节,学习原生sql。
需求分析
假设我们现在要做一个学生管理系统,所以首先确定,会有一个学生表,用于存放学生的信息,像姓名了,年龄了,性别了,等。
然后想了又想,学生肯定要属于哪个班级的,张三是一班的,李四是二班的,等。
所以我们可能就会有两张表了,一个是学生信息表,一个是班级表,然后学生属于哪个班级。
就像小时候戴的学生胸牌一样,姓名:xxx,班级:xxx等。
想了想,我觉得表结构大概如下
表结构图
表结构图.xlsx
表结构代码
school_test.sql
应该通过这两张表,基本可以把我们的sql语法,学的差不多,一起来看看叭。
查询(select)
既然表里面有这么多数据,那就需要查询了,首先是。
查询所有
sql
-- 语法SELECT * from <表名>;-- 例如,查询学生表SELECT * from student;
执行结果
where条件查询
但是有时候,我们可能需要查询带有一些条件的,比如id=1的,或者name=张三的等。
这时候就需要用到where。
sql
-- 语法SELECT * from <表名> where <条件>;-- 例如,查询id=1的数据SELECT * from student where id=1;
执行结果
这样,我们就把id=1的数据查找出来了。
同理,还可以写其他条件。
查询性别为男的(gender=男)
SELECT * from student where gender="男";
执行结果
这样,就把gender=男的都查出来了。
where多个条件查询(and)
假设现在表内容如下。
有俩琪琪,一个是男琪琪,一个是女琪琪,那我们查的时候,肯定要区分是男的还是女的琪琪了。
所以这时候需要where多个条件了。
and的意思是查询满足所有条件的数据。
sql
-- 语法SELECT * from student where <条件> and <条件> ...;-- 例如,查询男琪琪SELECT * from student where name="琪琪" and gender="男";
执行结果
这样,通过多个条件就卡住了更精准的数据。
select 选择列
在上面使用时,我们使用的都是select * from <表名>。
假设我们的数据如下
select *就表示,选择所有列
结果如下
如果是select id,name age,表示选择指定列
结果如下
select还能给列起别名
例如
SELECT id,name as "姓名",age from student;
执行结果
总结
本章主要讲述了如何使用Navicat for MySQL新建数据库,新建表,设计表等简单操作。
后续又根据实际需求设计出简单的学生表和班级表,并且简单是使用了select查询。
后来又讲解select *和select 列1,列2的区别。
如果在操作过程中有任何问题,记得下面留言,我们看到会第一时间解决问题。
敬往事一杯酒,自此不再回头。
我是码农星期八,如果觉得还不错,记得动手点赞一下哈。感谢你的观看。
如果在操作过程中有任何问题,记得下面留言,我们看到会第一时间解决问题。
边栏推荐
- Everyone, the default configuration of oracle cdc occasionally takes 30 seconds to capture data. How to optimize this?
- 调试ZYNQ的u-boot 2017.3 不能正常启动,记录调试过程
- C language file operation
- MySQL索引事务
- SCS【2】单细胞转录组 之 cellranger
- 强化学习_07_DataWhale深度Q网络进阶技巧
- 深入理解LTE网络的CDRX
- mysql数据库定时备份(保留近7天的备份)
- Unity3d famous project-Dark Tree translation
- 2022河南萌新联赛第(五)场:信息工程大学 F - 分割草坪
猜你喜欢
随机推荐
【8月9日活动预告】Prometheus峰会
Qt借助隐藏控件和QSS绘制重复元素
深入理解LTE网络的CDRX
3-6月面经总结,200多页真题笔记和详解(含核心考点及6家大厂)
2022河南萌新联赛第(五)场:信息工程大学 C - 丢手绢
强化学习_06_DataWhale深度Q网络
Tencent Cloud Song Xiang: Kubernetes cluster utilization improvement practice
CuteOneP 一款php的OneDrive多网盘挂载程序 带会员 同步等功能
基于ABP的AppUser对象扩展
QScroller的QScrollerProperties参数研究
.NET-7.WPF学习经验总结
Qt绘制椭圆曲线的角度问题(离心角和旋转角)
[Network Security] Practice AWVS Range to reproduce CSRF vulnerability
[Reinforcement Learning] "Easy RL" - Q-learning - CliffWalking (cliff walking) code interpretation
ES13 - ES2022 - The 123rd ECMA Congress approves the ECMAScript 2022 language specification
3.事务篇【mysql高级】
Regular backup of mysql database (retain backups for nearly 7 days)
Grammar Basics (Judgment Statements)
2022河南萌新联赛第(五)场:信息工程大学 K - 矩阵生成
英国国家卫生服务遭受攻击,系统出现大面积故障