Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Ý nghĩa của modifier \G trong MySQL (hiển thị kết quả dọc)

Trong MySQL client dòng lệnh, modifier \G (chữ G in hoa) làm cho kết quả truy vấn hiển thị theo định dạng **dọc (vertical)** thay vì bảng ngang thông thường. Rất hữu ích khi bảng có nhiều cột hoặc dữ liệu dài.

So sánh các modifier kết thúc câu lệnh

;\g\G
ModifierChức năng
Kết thúc câu lệnh, hiển thị dạng bảng ngang (mặc định)
Giống ;, hiển thị dạng bảng ngang
Kết thúc câu lệnh, hiển thị dạng dọc (vertical)

Ví dụ minh họa

1. Tạo bảng và chèn dữ liệu

CREATE TABLE DemoOfVertical (
    Id INT NOT NULL AUTO_INCREMENT,
    Name VARCHAR(20),
    PRIMARY KEY(Id)
);

INSERT INTO DemoOfVertical(Name) VALUES('Bob'),('Carol'),('David'),('Mike');

2. Case 1: Kết thúc bằng dấu chấm phẩy (;)

mysql> SELECT * FROM DemoOfVertical;

Kết quả bảng ngang:

+----+-------+
| Id | Name  |
+----+-------+
| 1  | Bob   |
| 2  | Carol |
| 3  | David |
| 4  | Mike  |
+----+-------+

3. Case 2: Kết thúc bằng \g

mysql> SELECT * FROM DemoOfVertical\g

Kết quả giống hệt ; (bảng ngang)

4. Case 3: Kết thúc bằng \G (chữ G in hoa)

mysql> SELECT * FROM DemoOfVertical\G

Kết quả dạng dọc:

*************************** 1. row ***************************
Id: 1
Name: Bob
*************************** 2. row ***************************
Id: 2
Name: Carol
*************************** 3. row ***************************
Id: 3
Name: David
*************************** 4. row ***************************
Id: 4
Name: Mike
4 rows in set (0.00 sec)

Khi nào nên dùng \G?

  • Bảng có nhiều cột (wide table) → tránh-wrap dòng trên terminal hẹp
  • Giá trị cột dài (TEXT, JSON, BLOB) → dễ đọc từng trường
  • Debug dữ liệu: so sánh giá trị giữa các hàng dễ dàng hơn
  • Kết hợp với SHOW ENGINE INNODB STATUS\G, SHOW PROCESSLIST\G

Lưu ý

  • Chỉ hoạt động trong MySQL client dòng lệnh (mysql, mysqlsh)
  • Không hoạt động trong các GUI (Workbench, DBeaver, phpMyAdmin) - chúng tự format hiển thị
  • Phải là chữ G in hoa, \g thường không có tác dụng này