2015-11-23 87 views
0

例如:有沒有辦法給MySQL查詢結果添加標題?

mysql> SELECT billing_amount, billing_currency_code, source_amount, source_currency FROM visa_record; 
+----------------+-----------------------+---------------+-----------------+ 
| billing_amount | billing_currency_code | source_amount | source_currency | 
+----------------+-----------------------+---------------+-----------------+ 
|   31651 | EUR     |   48563 | USD    | 
+----------------+-----------------------+---------------+-----------------+ 

但我想是這樣的:

Visa Record Information 
+----------------+-----------------------+---------------+-----------------+ 
| billing_amount | billing_currency_code | source_amount | source_currency | 
+----------------+-----------------------+---------------+-----------------+ 
|   31651 | EUR     |   48563 | USD    | 
+----------------+-----------------------+---------------+-----------------+ 
+9

不,那不是mysql的意思,這應該在應用程序級別上完成。 –

回答

2

馬特是正確與工會所有,也與這不是在命令行客戶端是爲語句。

然而,馬特的答案是不完整的:

SELECT 'Visa Record Information', null, null, null 
FROM visa_record LIMIT 1 
UNION ALL 
SELECT 'billing_amount', 'billing_currency_code', 'source_amount', 'source_currency' 
FROM visa_record LIMIT 1 
UNION ALL 
SELECT billing_amount, billing_currency_code, source_amount, source_currency 
FROM visa_record 

請注意,這做法會不會對一些早期(預V5.0)的MySQL版本的工作,因爲這些版本中使用的數據類型和長度從第一個查詢來確定所有查詢的數據類型和長度。你可能想在第一個查詢中使用''(空字符串)而不是null。

1

這不是SQL(或任何DBMS應使用)。

不過,如果你有沒有其他選擇使用UNION ALL

SELECT 'billing_amount'AS'Visa Record Information', 'billing_currency_code'AS'', 'source_amount'AS'','source_currency 'AS'' 
FROM visa_record 
UNION ALL 
SELECT billing_amount, billing_currency_code, source_amount, source_currency 
FROM visa_record 
+0

這將返回一個滿NULL的結果,結果似乎是錯誤的:http://pastebin.com/CfR3sE0x –

+0

並且也不會顯示其他列標題名稱。 –

+0

@KorayTugay修正答案,把它歸結爲一個工會,以節省處理 – Matt