mysql查询结果格式化输出

使用\G输出结果按行垂直显示结果

当使用命令 select 结果,如果表属性特别多的时候,查看起来非常难受,在 select 语句
后使用\G(必须大写),可以让结果按行垂直显示

select * from user \G

以html格式输出

使用mysql客户端的参数–html或者-T,则所有SQL的查询结果会自动生成为html的table代码

mysql -u root --html -p

select * from user;

以xml格式输出

使用mysql客户端的参数–xml或者-X选项,可以将结果输出为xml格式

mysql -u root --xml -p
select * from user;
<?xml version="1.0"?>

<resultset statement="select * from user;" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <row>
	<field name="Host">localhost</field>
	<field name="User">root</field>
  </row>
</resultset>

使用pager进入more或less查看结果

当select查询结果很多时,一屏幕往往无法装下。使用pager命令后在进行select命令,可以进入类似linux中more或less查看文件的效果

mysql> pager more
PAGER set to 'more'
mysql> select * from user;
...
mysql> nopager #退出pager状态
PAGER set to stdout

输出结果到html文件

  1. 通过tee命令结合--html输出查询结果到html文件
mysql --html   #--html选项,以html格式的输出
tee test.html  #tee表示将之后的内容记录到test.html文件,默认保存在home目录下
  1. 查看生成的文件及内容
ll  /root/test.html
  1. 如果不想要看到查询语句,可以在shell命令行中执行
mysql --html -e "select * from test.tab_json;"  > test1.html   #注意是重定向符号>
  1. 查看文件内容

备注:输出的文件中就不包括查询语句和查询了多少行的信息.

5.如果不想要列标题使用-N选项

mysql --html -N -e "select * from test.tab_json;" > html_test.html

备注:已经输出了html格式的文件,并且不带列标题.

通过--html将查询结果以html格式输出,对其他的查询没有影响
命令行中执行,使用>进行重定向输出,输出的结果中没有查询语句本身

posted @ 2022-07-30 14:00  panbin_2006  阅读(6303)  评论(0编辑  收藏  举报