怎么批量查询mysql表的行数

2023年 10月 31日 46.9k 0

在日常使用MySQL数据库过程中,经常需要查询某个表的行数,以便对其进行合理的数据操作。对于单个表的查询,我们可以使用如下的SQL语句:

SELECT COUNT(*) FROM table_name;

怎么批量查询mysql表的行数

但是,如果需要查询多个表的行数怎么办呢?一种方法是逐个执行上述SQL语句,但是如果表的数量很大,这种方法就很麻烦。现在,我们可以使用以下的代码片段来批量查询MySQL表的行数。

#!/bin/bash
USER="your_username"
PASSWORD="your_password"
DBNAME="your_dbname"
TABLES=$(mysql -u$USER -p$PASSWORD $DBNAME -e "SHOW TABLES;" | tr -d '| ' | grep -v Tables_in)
echo "--------------"
echo "DB: $DBNAME"
echo "--------------"
for tbl in ${TABLES}
do
BC=$(mysql -u$USER -p$PASSWORD $DBNAME -e "SELECT COUNT(*) FROM $tbl;" | tail -n +2)
echo "$tbl: $BC"
done

这段代码的意思是,首先从MySQL数据库中获取所有的表名,然后逐一执行SQL语句,并输出表的名称和行数。注意,需要将三个变量“your_username”、“your_password”和“your_dbname”替换成实际的用户名、密码和数据库名称。

上述代码可以直接在Linux或Mac终端中执行,也可以保存为一个.sh文件,通过“./filename.sh”命令来执行。

总之,使用上述的代码片段可以方便快捷地批量查询MySQL表的行数,提高数据管理的效率。

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论