2012-09-20 32 views
0

我正在使用mysql的GROUP_CONCAT()作爲我的一個查詢。但我以字節爲單位獲取數據。 要將字節轉換爲VARCHAR我使用了CONVERT()函數。 但我沒有看到任何差異,即使在那之後。我仍然以字節爲單位獲取數據。mysql:CONVERT()函數不適用於從GROUP_CONCAT()到VARCHAR的字節

下面是我曾嘗試:

CONVERT(GROUP_CONCAT((T1.CASE NODE_ID WHEN 103 THEN CONCAT(T1.CUSTOMER_ATTRIBUTE,'~',T2.DISPLAY_TEXT) ELSE NULL END)) USING LATIN1)AS HEADER, 

,但我得到的輸出:需要

HEADER 
---------- 
Name [4B] 

幫助。

謝謝。

+0

你使用什麼客戶端?嘗試使用mysql客戶端 - http://dev.mysql.com/doc/refman/5.5/en/mysql.html。 – Devart

+0

嗯,我使用SQLYOG和TOAD進行MYSQL ...在SQLYog中,我得到了上面[4B]提到的結果,而在TOAD中,我得到了'(排除)'的結果。當我點擊它時,查詢再次被觸發以給我結果。 – DarkKnightFan

回答

0


使用這樣CONCAT(GROUP_CONCAT(your_column))這將給作爲字符串輸出

歡呼聲..

+0

試過這個..沒有變化..同樣的結果! – DarkKnightFan

0

這是因爲不同類型的傳遞到CONCAT功能。 MySQL將它們轉換成適當的類型,在你的情況下它是BLOB或其他。

解決方法是將所有非字符串類型轉換爲字符串,或者只是將CONCAT函數的結果轉換爲字符串一次。例如 -

SELECT CAST(CONCAT(id, '~', column1, column2) AS CHAR) 
相關問題