mysql 语句 /g_MySQL中\g、\G与;三种语句结束符

  • Post author:
  • Post category:mysql


无论哪种数据库,人机交互中最重要的都是通过SQL进行,每个SQL在我们敲完后发给数据库,数据库执行的结果再返回给我们。

代表一个SQL写完了,可以发给数据库执行了,用的最多的就是;,比如

root@database-one 21:46: [gftest]> show tables;

+——————+

| Tables_in_gftest |

+——————+

| emp |

+——————+

1 row in set (0.00 sec)

root@database-one 21:46: [gftest]> select * from emp;

+——–+————+———+——–+

| ename | hiredate | sal | deptno |

+——–+————+———+——–+

| 郭军 | 2019-12-08 | 8400.00 | 10 |

| 刘杰 | 2018-04-09 | 9100.00 | 10 |

| 王艳 | 2020-01-05 | 6000.00 | 20 |

+——–+————+———+——–+

3 rows in set (0.01 sec)

其实MySQL中还有另外两个结束符,先来看\g

root@database-one 21:47: [gftest]> select * from emp \g

+——–+————+———+——–+

| ename | hiredate | sal | deptno |

+——–+————+———+——–+

| 郭军 | 2019-12-08 | 8400.00 | 10 |

| 刘杰 | 2018-04-09 | 9100.00 | 10 |

| 王艳 | 2020-01-05 | 6000.00 | 20 |

+——–+————+———+——–+

3 rows in set (0.00 sec)

\g的效果和;是一样的。那再来看看\G

root@database-one 21:47: [gftest]> select * from emp \G

*************************** 1. row ***************************

ename: 郭军

hiredate: 2019-12-08

sal: 8400.00

deptno: 10

*************************** 2. row ***************************

ename: 刘杰

hiredate: 2018-04-09

sal: 9100.00

deptno: 10

*************************** 3. row ***************************

ename: 王艳

hiredate: 2020-01-05

sal: 6000.00

deptno: 20

3 rows in set (0.01 sec)

是不是结果很特别,虽然还是显示了emp表中的所有数据,但是在显示格式上有了变化。原来,在MySQL中,\G这个结束符,不光代表SQL敲完了,还要求返回的结果,显示的时候,每行数据,所有列均竖向打印,以便更好地显示内容较长的记录。

最后总结一下,平时使用;或者\g均可,当记录较长时,使用\G能更好的显示,方便查看。



版权声明:本文为weixin_36265390原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。