mysql查询5周数据_第五周:MySQL数据库
首先,先了解一下数据库的基本概念要点:
数据库是数据存储的集合,表示数据结构化的信息
列存储表中的信息
行存储表的明细
主键是表中的唯一标识
主键不具备业务意义
在实际操作中,对表的主键不做强制性要求,但是建议设立
主键必须唯一
每行必须有一个主键,不可为空
主键的值不可被修改
主键值被删除后不可重用
表A的主键,可以作为表B的字段,此时不受约束
数据库的基本类型(最基础的):char--文本 int--整数 float--小数点 date--到日的日期 timestamp--精确到秒或者毫秒
数据库的实际操作:
MySQL的安装略,直接按照网上教学视频逐步安装即可。(这里面写到几个本人安装踩到的比较低级的坑,对我一个嘎嘎新的小新手来说是坑,就是在装win7的本的时候一次完成,基本没什么,在装台式机的win10的时候,第一次装的时候没有workbench,重装之后发现依然部分报错,原因是没有将原有文件删除干净,再后来装的时候,仔细看了一下每一步,确定有workbench的时候,就正常装好了。)接下来打开workbench进行操作。
点击新建数据库
创建一个表,对表进行命名,建议养成好的习惯在注释的地方进行备注,以便日后表多的时候或者别人使用的时候更好的了解内容。
数据编码先择UTF8形式的
将需要的字段输入进区,并调整字段的值类型,可设置主键。
再将表格导入数据库表内(建议.csv格式的,前面提到过为什么,因为Excel本身会有很多形式)
此时在导入数据的时候有2中方法:
1.用workbench界面直接导入,有点是交互性强易掌握,缺点是速度会慢需要等待。
2.直接写代码的形式,有点是运行很快,缺点是代码需要自己一点点写进去。(在数据量较大多行的情况下,建议直接用代码形式加载)
【注意】加载数据是别的编码例如jbk形式的,导入进去的时候就会出现乱码的情况,当数据库选择的是UTF8的时候,导入的数据也应是utf8才可。
解决方式:将Excel另存为utf8形式的.csv文件导入即可。
导入的过程中会直接把表头导入进去,直接选择删除行即可。
需要注意的是:
有的时候文本过长~长出了文本限定的45,这时候将需要进行修改将45变大,否则会报错。
导入后检查无误建表保存。
【MySQL语句】
1.核心:select查询语句
select*form data.表名称
*为通配符,代表全部
2.limit 100 限制搜索100条数据,查找100行
执行两条sql语句的话,结束时用“;”进行结束
点击保存,可将查找出来的数据进行导出生成。
3.order by 字段 desc
将字段进行升序排列
加desc为降序排列
4.过滤功能where命令
where 字段=过滤字段
逻辑关系符号“=”“>”"
between 数值 and 数值:在两个数值之间
in(“字段”,“字段”)特定的条件筛选两个字段的内容
“!=”不等于
“<>”不等于
not in (“字段”,“字段”)过滤掉两个字段的内容
多条件查找 加and 链接 and 字段=“”
or 或者
多重嵌套
where city=“上海”
and education=“本科”
or work=“1-3年”
【注意】条件顺序
where city=“上海”
and (eudcation="本科"
or work =“1-3年”)
执行逻辑为()内进行优先进行
模糊查找
where
字段 like “%模糊词%”:过滤包含模糊次的
%模糊词:以模糊词结尾的
模糊词%:以模糊词开头的
进行分组
group by 字段
【实例应用】
select 城市 ,count(城市ID)form data.表名
group by 城市
运行后:城市分组对应的城市ID进行计数的数量和
distinct去重
【group by 分组的高级用法】
having单纯针对分组的过滤
添加占比
as 字段别名化将过长复杂的代码进行替代
结果是一样的,但是,不能用于逻辑出发的运算,因为不能识别,不能直接用于select,但是可以在where,group by 的层面进行使用
【函数】
1.拆分技巧
left与Excel基本一致
locate()与Excel里面的find一样
写嵌套的时候,建议一步一步写,分步骤走
支持中间截取函数substr
效果等同于上面求出薪资的上线和下线,但是“8K以上”这样的数据就无法进行处理。
子查询
上案例可视为一个tab进行查询
可以进行嵌套,给表添加别名
就可以直接引用别名 bottom top 等等
数据清洗
计算为顺序计算
调整一下让代码优雅一些,并且有别名运行起来效果较好。
子查询的字段要保持一致,否则会报错
跨表分析,使用子查询
得到的并不是全部的明细字段,通过用jion可以将两张表进行关联。
加载万条以上的数据需要使用命令行的方式:
打开MySQL 5.7 Command Line Client
路径可以直接拖拽进去
指定分割符,否则会报错
【时间操作】
进行格式的改变
MySQL可链接Power BI 进行使用,在使用的过程中,建议先将语句写好,再在Power BI中运行得出想要添加字段和内容。不建议直接在Power BI上面直接添加进行,因为前者为服务器直接运行后再Power BI中显示结果,后者则是考量自身电脑的性能。
多多结合实际进行练习,或者去课程提供的素材晚上去刷题进行联系。祝看到笔记的所有人都能熟悉掌握MySQL。
mysql查询5周数据_第五周:MySQL数据库相关推荐
- mysql查询第八页_第八节:MySQL之Select指令详解和相关练习
一. 前言 该篇文章基于之前 https://www.cnblogs.com/yaopengfei/p/7182230.html 的基础上进行补充修改. 1. 简介 就查询而言,可以简单的分为: ...
- 从MySQL中导出表中数据_用命令从mysql中导出/导入表结构及数据
在命令行下mysql的数据导出有个很好用命令mysqldump,它的参数有一大把,可以这样查看: mysqldump 最常用的: mysqldump -uroot -pmysql databasefo ...
- mysql查询cp值数据_写出创建产品销售数据库CPXS的所有表的SQL 语句。所包含的表如下:...
[判断题]UITextView直接继承自UIScrollView类.(3.0分) [判断题]UIDataPicker是一个可以用来选择日期和时间的控件.(3.0分) [判断题]UITextField文 ...
- mysql如何定位到数据_如何快速定位当前数据库消耗CPU最高的sql语句?
概述 如果是Oracle数据库我们可以很容易通过sql来定位到当前数据库中哪些消耗CPU高的语句,而mysql数据库可以怎么定位呢?这里用一个简单例子说明下... 主要是了解如何定位的思路,具体看官网 ...
- MySQL查询不支持中文_为什么我的 Mysql 不支持中文查询?
Q: 我在写一个查询条件时的问题如下: 如我想写一个字段中包含"李"字的所有记录 $str="李"; select * from table where fie ...
- mysql如何快速插入数据_如何快速向Mysql插入大量数据?
本文摘要 本文演示了3分钟如何向MySQL数据库中插入100万条数据的实例. 一.编写测试案例向MySQL数据库中插入百万条数据.测试数据表建表脚本如下:use db_xk; drop table i ...
- c mysql显示多条数据_用一条mysql语句插入多条数据
假如有一个数据表A: id name title addtime 如果需要插入n条数据 : $time= time(); $data = array( array( 'name'=>'name1 ...
- mysql查询特定时间数据视频_mysql查询特定时间段内的数据
参照文章(mysql查询时间段内数据)进行了操作. 先来建表语句: [sql] view plaincopySETFOREIGN_KEY_CHECKS=0;-- ------------------- ...
- MySQL查询本年的数据的sql语句
MySQL查询本年的数据的sql语句: SELECT * FROM 表名 WHERE YEAR(时间字段)=YEAR(NOW());
最新文章
- MERGE INTO 解决大数据量 10w 更新缓慢的问题
- 火狐浏览器 firebug调试不能载入javascript
- 高可用flume-ng搭建
- ignite学习笔记
- Dalvik/ART(ANDROID)中的多线程机制(1)
- 拜年+红包,都有份儿!
- 5G(6 )---5G NR 物理层 索引
- Linux内存错误系统重启,linux服务器硬件报错,系统异常重启检测-MCElog
- 托微软的福,谷歌把GitLab捧成了独角兽
- Eclipse设置内存大小
- 2021-08-05查询排序分页语句
- 阿里云 ECS Ubuntu 14.04 无法访问之磁盘 IO 跑满问题排查
- linux 生成rsa密钥,linux下生成rsa密钥的方法
- win7 旗舰版激活工具(附件下载)
- 小程序根据国外经纬度显示地图
- C语言switch语句无break
- 1015: C基础-同因查找
- 散粉在哪个步骤用_【散粉怎么用】正确的散粉用法_方法步骤顺序-她时代-女性时尚生活宝典...
- Redis高并发点赞
- 羊皮卷之二:我要用全身心的爱来迎接今天