MySQL学习记录(导入Excel表到数据库,并筛选条件输出)
附上:重置mysql账号密码方法
ubuntu系统下mysql重置密码和修改密码操作 - skh2015java的博客 - CSDN博客(改完重启,登录mysql要root/sudo权限)
Centos7重置Mysql 8.0.1 root 密码 - 网络蚂蚁 - 博客园
php7访问mysql8.0的配置
学习MySQL,我个人觉得最好的方法就是获得一个稍微大的数据库数据并通过这个数据库来学习基本操作和优化。所以我把平时学校发下来的个人信息xls/xlsx文件拿来用了。
在这里推荐一个学习的好地方(比W3C和菜鸟教程好)https://www.shiyanlou.com/courses/9 课程以LINUX为基础,其实比Windows爽多了,学得更多
像我这等穷人,可以筛选他免费的课程:https://www.shiyanlou.com/courses/?fee=free
学到上面挑战1部分后再看下面吧
首先是注意事项:

然后就安装工具
--图形化工具--》
SQLyog
社区版免费(当然功能没有专业/企业版全):
Downloads · webyog/sqlyog-community Wiki (GITHUB下载地址)
(为什么不去官网下载?因为被DNS污染)
安装语言可选中文
附上:
mysql8.0 caching_sha2_password加密方式和5.0之前的区别和解决方案 - 快乐的傻子爱编程 - CSDN博客
【MySQL基础】mysql8.0 Authentication plugin 'caching_sha2_password' cannot be loaded - 东陆之滇CSDN - CSDN博客
试着复制别的软件的caching_sha2_password.dll到目录,报了其他的错
既然不支持更安全的加密模式?那可能就不适合我这种追求新特性的人了。Bye~
Navicat(推荐)
官网下载:Navicat | 下载 Navicat Premium 14 天免费 Windows、macOS 和 Linux 的试用版
破解方法:Navicat Premium 12.1.16.0安装与激活 - 简书
建立数据库-右击数据库导入数据,选择excel文件
(了解一下这个软件的菜单栏: "窗口" "查询")
导入成功后我们稍微修正一下(设计表),然后就点上面的查询
注:以下以表名代替你建立的表的名字
SELECT * FROM `表名`;
查询单个表里的内容:
SELECT * FROM `283班` WHERE 性别= '女';
/*
* table表名(283班)要用反引号`包起来,字符串(女)用单或双引号' "
* column键(性别)不能加引号 * 总结: 库表反引,字符串正引,键不引
*/
查询多个表的内容
SELECT * FROM `表名1`, `表名2`, `表名2` WHERE 性别="女";
从3个表 选择查询(SELECT) 并筛选(WHERE) 性别为女的人的 所有信息(*)
然后发现报错:1052 大概是说WHERE子句条件不明确(因为我们没告诉系统要筛选哪一张表的性别)MySql: Column 'XXXX' in field list is ambiguous 错误 - 邓晓晖 - 博客园
所以我们先去掉WHERE子句试试,结果......我这个数据库是整个院系的信息,查询时导致内存爆了.... (当然内存占满对硬件应该是没有破坏力的)
算了,不能作死...
所以我们用UNION
/*当然可以给性别加上表名,如 WHERE 281班.性别='女' ,但我有十多张表,不如下面复制粘贴后修改班级名来得快*/ SELECT *
FROM `281班`
WHERE 性别='女' UNION SELECT *
FROM `282班`
WHERE 性别='女' UNION SELECT *
FROM `283班`
WHERE 性别='女' UNION SELECT *
FROM `284班`
WHERE 性别='女';
点开我看
报错:> 1222 - The used SELECT statements have a different number of columns > 时间: 0.002s
然后从这篇得到启发: sql语句之union与join的区别 - 扬空 - 博客园
看了一下我的数据库几个表,发现EXCEL导入时多了一些NULL的Column,这些字段数量(即列的数量)不一样多,导致UNION无法拼接查询结果,所以删了多余的NULL列,
【切记】 一定要保存后才能查询成功 Navicat并不是修改后查询就会保存的(有没有保存可以查看Navicat窗口菜单栏,里面有星号的表都是没有保存的。)未保存的表没有生效修改,查询只会查到之前的结果
最终查询成功!
返回了所有女生的信息... (我TM才发现Excel表里的性别排序被人动过,除了性别其他都是对的....发表的人一定是故意的....)
(数据库没有错,是导入的Excel文件本来就是假的....................)
关于Navicat的操作:
当然,要"注意运行当前语句"与"运行"的区别


MySQL学习记录(导入Excel表到数据库,并筛选条件输出)的更多相关文章
- C# winform 编程 向ACCESS数据库导入EXCEL表使用心得
public string MyConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=ErLake.mdb&quo ...
- winfrom 导入Excel表到access数据库(来自小抽奖系统)
网上有很多这种方法,本人只是针对自己的系统来实现的 //导入excel表 private void ImportTSMenu_Click(object sender, EventArgs e) { O ...
- 向ACCESS数据库中的表导入EXCEL表,在 System.Data.OleDb.OleDbException 中第一次偶然出现的“System.Data.dll”类型的异常
向ACCESS数据库中的表导入EXCEL表,EXCEL表Sheet1中与ACCESS数据库表中的关键字对应的列的值,不能与数据库中表的主键项值重复,不然就会出现 在 System.Data.OleDb ...
- 利用kettle组件导入excel文件到数据库
利用kettle组件导入excel文件到数据库 1. 实现目标 把excel文件内容导入到目标表中:然后用java调用kettle的转换.excel文件的内容仅仅有两列,示比例如以下: wat ...
- 【转】 如何导入excel数据到数据库,并解决导入时间格式问题
在办公环境下,经常会用到处理excel数据,如果用写程序导入excel数据到数据库那就太麻烦了,涉及解析excel,还要各种格式问题,下面简单利用数据库本身支持的功能解决这类导入问题. 准备 创建表 ...
- MySQL问题记录——导入导出权限设置
MySQL问题记录——导入导出权限设置 摘要:本文主要记录了在使用MySQL的过程中导入导出权限设置时遇到的问题以及解决方案. 相关日志 [Note] --secure-file-priv is se ...
- Mysql查询结果导出Excel表
Mysql查询结果导出Excel表: 一句转换方式:$ mysql -uops -p'GCNgH000KP' dtbs -e 'select * from t_proxy__record;' --de ...
- 向MySql数据库导入excel表数据
最近要开发一个小的答题系统,如果题目人工录入那确实很麻烦.所以想到是不是可以从用一些现有数据格式的文件导入数据.在网上查了一下,看到有关于将excel的数据导入到mysql的方法.所以将题库数据整理成 ...
- MYSQL 导入Excel数据到数据库中
1,先把excel的数据整理整齐,如每列都要保持同样的格式:就一列一列的数据: 2,导出excel的数据为CSV格式,即把excel的数据另存为xxxx.csv;: 3,用EditPlus工具将xxx ...
随机推荐
- go 1.13 环境变量配置
GO111MODULE="off"GOARCH="amd64"GOBIN=""GOCACHE="/Users/js/Library ...
- Date以及LocalDateTime格式化
public static void main(String[] args) { LocalDateTime local = LocalDateTime.now(); Date date = new ...
- 【USTC】雨
自九月初来到科大,到现在已经一个月.这几天是国庆假期(祖国七十华诞,祝福祖国),我没有回家,白天在实验室,晚上去找小许. 今天下雨了,不大,但是温度降了大约10度,上次下雨还是九月初开学那几日. 9月 ...
- NET 线程可传递参数
1.多线程执行方法 /// <summary> /// 随机数保存队列 /// </summary> private Queue<string> _randomQu ...
- NopCommerce源代码分析之用户验证和权限管理
目录 1. 介绍 2. UML 2.1 实体类UML图 2.2 业务相关UML图 3. 核心代码分析 3.1 实体类源代码 3.2 业务相关源代码 3.3 相关控制器源代码 3.4 ...
- Ansible varialbes
1.什么是变量? 以一个固定的字符串,表示一个不固定的值 version: 1.12 2.定义变量? 1.在playbook中定义变量? vars 关键字 [root@manager projec ...
- JavaScript 字符串(String) 大全
JavaScript字符串存储一系列字符,如“John Doe”.字符串可以是双引号或单引号内的任何文本: <!DOCTYPE html> <html> <meta ch ...
- SQL之CASE WHEN用法详解
原文链接:https://blog.csdn.net/rongtaoup/article/details/82183743 原文链接:https://www.cnblogs.com/zhuyeshen ...
- Redis命令geoXXX
1. Redis命令geoXXX 1.1. 介绍 自Redis 3.2开始,Redis基于geohash和有序集合提供了地理位置相关功能. Redis Geo模块包含了以下6个命令: GEOADD: ...
- 如何使 highchart图表标题文字可选择复制
highchart图表的一个常见问题是不能复制文字 比如官网的某个图表例子,文字不能选择,也无法复制,有时产品会抓狂... 本文给出一个简单的方案,包括一些解决的思路,希望能帮助到有需要的人 初期想了 ...