今天有一需求,是将全国每市的参赛人数前5名的学校导出为excel。可能有经验的DBA完全可以用SQL把这需求给done了。可是因为省,市字段的中文名存储在另一个服务器的数据库上,加上也懒得去拼这么复杂的SQL查询。于是,我选择了用文件保存中间结果进行过渡查询的方式。勿吐槽,算是温习下多年的旧知识吧。
1.将所有参赛的市导出为文件。
用mysql进入mysql数据库,然后执行:
select city from works_author group by city into outfile '/home/mysql/city.txt';
PS:文件路径因为权限的原因,最好是存放在mysql的安装目录下。
2.求出这些城市的前5名学校。
方法大致说下,用shell循环city.txt的内容作为sql查询的条件。脚本如下:
#!/bin/bash
cat /home/mysql/city.txt | while read line
do
echo $line
mysql -h你的MYSQLIP -uMYSQL登录名 -pMYSQL密码 数据库名 --default-character-set='utf8' -N -e "select province,city,school,count(school) as count from works_author where city=$line group by school order by count desc limit 5;" >> school.txt;
done
3.将数据school.txt复制到有城市省份数据库的服务器上
在目标服务器上执行:
/usr/bin/scp -r root@远程服务器IP:/home/school.txt /home/
4.将文件school.txt导入临时创建的表school_top5中。
load data local infile '/home/school.txt' into table school_top5 fields terminated by '\t';
5.连表查询最后将结果导出。
相关推荐
mysql导出指定表并分表存储sql文件且压缩的shell脚本,数据库数据过大时,可以用于数据库备份
5. **数据库管理**:MySQL Shell可以帮助用户执行常见的数据库管理任务,如创建、删除和管理数据库、表,以及导入和导出数据。 6. **性能分析**:内置的性能顾问模块可以分析查询性能,提供改进建议,帮助优化...
要将mysql的查询结果导出为csv,一般会使用php连接mysql执行查询,将返回的查询结果使用php生成csv格式再导出。 但这样比较麻烦,需要服务器安装php才可以实现。 直接使用mysql导出csv方法 我们可以使用 into ...
这篇描述的焦点在于如何通过一个Shell脚本来将MySQL查询结果保存到文件,这在数据备份、分析或迁移时非常实用。 首先,让我们深入理解标题和描述中的关键知识点: 1. **MySQL SELECT INTO OUTFILE**:这是MySQL...
当我们需要在Linux环境下批量处理数据库操作时,结合使用shell脚本和MySQL可以极大地提高效率。以下将详细介绍如何在shell脚本中执行MySQL脚本并传递参数。 首先,我们需要创建一个shell脚本,通常以`.sh`为扩展名...
本文将介绍使用 MySQL 命令和 shell 结合来将数据导出成 Excel 格式的方法。 方法一:使用 SELECT INTO OUTFILE 语句 在 MySQL 中,我们可以使用 SELECT INTO OUTFILE 语句来将数据导出成文本文件,然后再将其转换...
shell-mysql 使用shell脚本分页读取MySQL数据 脚本背景 由于要在Linux上,远程读取mysql的表的数据,然后做一定清洗后,把数据上传至Hadoop集群中,使用Java写吧,感觉太麻烦了,得在Win上开发好,还得打成jar包, ...
`test_mysql_csv.txt`可能是脚本执行的结果记录或教程文本,详细解释了如何使用Bash和MySQL进行CSV数据操作,包括导入和导出的过程,以及可能出现的问题和解决策略。 总的来说,这个压缩包提供的资料涵盖了从Bash...
MySQL Shell是MySQL数据库管理系统提供的一款强大的命令行工具,它集成了JavaScript、Python和SQL三种语言环境,为数据库管理员和开发者提供了交互式操作MySQL服务器、管理数据库对象以及执行复杂脚本的功能。...
3. **高级功能**:MySQL Shell支持JSON文档存储、图形化查询结果、性能顾问等功能。JSON支持使得在NoSQL和SQL之间的工作变得更加方便,而性能顾问则能帮助识别并优化查询性能问题。 4. **安全连接**:MySQL Shell...
防止误删服务器数据库 ,使用Shell脚本备份数据库: ### 1、需求分析: 1)每天凌晨2:10备份数据库atguiguDB到/data...-----》shell脚本写到/usr/sbin/mysql_db_backup.sh---》然后将脚本设置到crond执行 2)代码实现
`mysqldump`是一个强大的命令行工具,它允许用户备份、导出MySQL数据库的数据和结构。这个工具对于开发人员和系统管理员来说是必不可少的,因为它提供了在不同环境之间迁移数据的能力,也可以用于定期备份,防止数据...
3. **图形化界面**:虽然MySQL Shell主要是一个命令行工具,但它的某些功能可以支持创建简单的图形化表示,帮助用户更好地理解数据结构和查询结果。 4. **安全连接**:MySQL Shell支持SSL加密连接,确保在远程操作...
PHP的PDO(PHP Data Objects)扩展提供了`PDO::query()`方法,可以执行SQL语句,包括`SELECT INTO OUTFILE`,将查询结果写入文件。但是,这个方法不支持整个数据库的导出,通常用于导出部分数据。 二、MySQL数据...
本资源提供了一个专为MySQL 5.7.8及以前版本设计的shell脚本,它允许用户进行自定义配置,方便快捷地执行数据库备份操作。 首先,我们需要了解`shell`脚本。Shell是Unix或Linux操作系统中的命令解释器,它允许用户...
本文将详细介绍如何在Windows环境下使用命令行工具进行MySQL数据库的导出与导入。 #### 一、MySQL数据库导出方法 ##### 1. 准备工作 - **确认MySQL服务状态**:首先,需要确保MySQL服务已经启动。可以通过以下...
使用MySQL可视化工具Navicat导出MySQL的表结构脚本的方法。 1、右键Navicat中的数据库→数据传输(Data Transfer)。 2、左边数据库对象(Database Objects)中选择对应...以上这篇Navicat for MySQL导出表结构脚本的
该命令支持将数据导出为 SQL 脚本文件,可以在任意支持 MySQL 的环境中运行这些脚本文件来恢复数据。 **基本语法:** ```shell mysqldump [选项] 数据库名 > 文件名.sql ``` **常用选项:** - `-u 用户名`:指定...
mysql用shell命令导出数据,执行存储过程
#### 三、MySQL导出SQL脚本的方法 ##### 1. 使用`mysqldump`命令导出整个数据库 ```shell mysqldump -u 用户名 -p 数据库名 > 导出的文件名 ``` 例如,导出名为`test`的数据库: ```shell mysqldump -u root -p ...