MySQL Linux命令行工具和正确格式化的结果[重复]

Posted

技术标签:

【中文标题】MySQL Linux命令行工具和正确格式化的结果[重复]【英文标题】:MySQL Linux command line tool and properly formatted results [duplicate] 【发布时间】:2013-10-15 06:07:18 【问题描述】:

有没有人知道从 shell 中使用一个很好的工具来查询数据库并获得可理解的结果

在命令行上,通过 SSH,我想使用 mysql 查询数据库,但结果几乎无法读取,因为终端屏幕没有格式。

如果我运行以下命令,则很难理解结果。

use mydb;
select * from db3_settings;

我知道我可以使用 phpMyAdmin 或 MySQLCC,但我正在寻找命令行解决方案。

【问题讨论】:

【参考方案1】:

您可以通过多种方式使结果更具可读性。

使用限制只查看几行:

SELECT * FROM table LIMIT 10;

只返回选择列:

SELECT a,b,c FROM table;

\G终止您的查询,将当前语句发送到服务器以执行并使用垂直格式显示结果:

SELECT * FROM table \G

【讨论】:

【参考方案2】:

您可以使用\G 获得垂直格式的输出。

这是标准输出:

mysql> select * from tblSettings;
+-----------+----------------+---------------------+
| settingid | settingname    | settingvalue        |
+-----------+----------------+---------------------+
|         1 | maxttl         | 30                  |
|         2 | traceroutepath | /usr/bin/traceroute |
|         3 | alertemail     | me@host.com         |
+-----------+----------------+---------------------+
3 rows in set (0.00 sec)

这就是\G 的输出:

mysql> select * from tblSettings \G;
*************************** 1. row ***************************
   settingid: 1
 settingname: maxttl
settingvalue: 30
*************************** 2. row ***************************
   settingid: 2
 settingname: traceroutepath
settingvalue: /usr/bin/traceroute
*************************** 3. row ***************************
   settingid: 3
 settingname: alertemail
settingvalue: me@host.com
3 rows in set (0.00 sec)

【讨论】:

包含\G 的含义会很有用,而且我相信\G 是一个终止符,因此您不需要分号来终止它,否则需要额外的查询。跨度> 【参考方案3】:

对于非 Windows 系统,您可以使用 less 使输出格式化或更具可读性。

mysql > pager less -SFX;
mysql > select * from databasename.table;

它将 sql 输出通过管道传递给 less,从而提供可以使用光标键水平和垂直滚动的表格输出。按'q'退出

如果你不想要,使用重置

mysql> nopager

【讨论】:

【参考方案4】:

在命令行中,您可以通过在查询末尾使用\G 将返回记录的结果显示为单独的格式化记录(而不是长表),如下所示:

select * from <tablename> \G;

【讨论】:

此答案已被标记为低质量。如果它回答了问题,请考虑添加一些文字来解释它是如何工作的。

以上是关于MySQL Linux命令行工具和正确格式化的结果[重复]的主要内容,如果未能解决你的问题,请参考以下文章

→ 如何用命令行进入mysql

将 MySQL 命令行结果的输出格式更改为 CSV

php命令行工具检测php文件语法格式是不是正确的方法是

Linux系统管理员的命令行工具箱目录(转)

mysql怎么登录不了?

如何以 CSV 格式输出 MySQL 查询结果?