2013-09-05 63 views
7

Có thể hiển thị kết quả truy vấn như bên dưới trong vỏ mysql không?Hiển thị kết quả truy vấn không có dòng bảng trong vỏ mysql (đầu ra không đầu ra)

mysql> select code, created_at from my_records; 
    code   created_at 
1213307927 2013-04-26 09:52:10 
8400000000 2013-04-29 23:38:48 
8311000001 2013-04-29 23:38:48 
3 rows in set (0.00 sec) 

thay vì

mysql> select code, created_at from my_records; 
+------------+---------------------+ 
|  code |   created_at | 
+------------+---------------------+ 
| 1213307927 | 2013-04-26 09:52:10 | 
| 8400000000 | 2013-04-29 23:38:48 | 
| 8311000001 | 2013-04-29 23:38:48 | 
+------------+---------------------+ 
3 rows in set (0.00 sec) 

Lý do tôi hỏi vì tôi có một số công việc tẻ nhạt mà tôi cần phải sao chép các đầu ra và dán nó vào công cụ khác.

Trả lời

15

--raw, -r

Đối với đầu ra bảng, các “đấm bốc” xung quanh các cột cho phép một giá trị cột để được phân biệt với nhau. Đối với đầu ra không đầu ra (chẳng hạn như được sản xuất theo chế độ hàng loạt hoặc khi tùy chọn --batch hoặc --silent được cung cấp), các ký tự đặc biệt được thoát trong đầu ra để chúng có thể được nhận dạng dễ dàng. Dòng mới, tab, NUL và dấu gạch chéo ngược được viết dưới dạng \ n, \ t, \ 0 và \\. Tùy chọn --raw vô hiệu hóa ký tự này thoát.

Ví dụ dưới đây trình bày bảng so với sản lượng nontabular và việc sử dụng các chế độ thô để vô hiệu hóa thoát:

% mysql 
mysql> SELECT CHAR(92); 
+----------+ 
| CHAR(92) | 
+----------+ 
| \  | 
+----------+ 

% mysql -s 
mysql> SELECT CHAR(92); 
CHAR(92) 
\\ 

% mysql -s -r 
mysql> SELECT CHAR(92); 
CHAR(92) 
\ 

Từ MySQL Docs

0

tôi giải quyết này nhưng sử dụng concat_ws tham gia các kết quả với nhau và sau đó thêm một không gian (số đầu tiên)

select concat_ws (' ',ipNetFull,ipUsage,broadcast,gateway) from ipNets; 
1

One-liner

mysql -u YOURUSER -p --password=YOURPASSWORD -s -r -e "show databases;"   
mysql -u root -p --password=abc12345 -s -r -e "show databases;" 
6

Không chính xác những gì bạn cần, nhưng nó có thể hữu ích. Thêm \ G ở phần cuối của các truy vấn

select code, created_at from my_records\G; 

kết quả truy vấn sẽ trông như thế này:

*************************** 1. row *************************** 
code: 1213307927 
created_at: 2013-04-26 09:52:10 
*************************** 2. row *************************** 
code: 8400000000 
created_at: 2013-04-29 23:38:48 
+0

có cách nào để sắp xếp theo thứ tự bảng chữ cái các cột trong phương pháp này không? –

0

Bạn cần phải vượt qua -s tham số mysql -s.

Các vấn đề liên quan