2016-02-25 95 views
0

在列上使用substring_index後,我的數據更改或損壞波斯語中的非英文文本。我也檢查了排序和字符集,它是UTF-8。MYSQL:使用SUBSTRING_INDEX後,我的數據更改/損壞(rtl語言)

如果我使用英語,它就像一個魅力,但在rtl語言它不起作用。這裏是substring前我的記錄:

select group_id , rows from concat 

before

這裏是我得到substring_index後:

select group_id , SUBSTRING_INDEX(rows, ',', 1) as name from concat 

after

它顯示了 「A + 3」,但
它應該顯示「فثس」。

任何人都知道解決方案嗎?

+0

也許我正在看東西,但確定它是逗號嗎?將它從數據直接複製到SUBSTRING_INDEX分隔符中進行測試。 – Mihai

+0

@Mhaihai,是的,這個字段是用mysql「group_concat」函數創建的。 – Arash

+0

'SHOW VARIABLES like'char%';' –

回答

0

其實我想通了;問題出在使用substring_index後,字段類型更改爲導致問題的「MEDIUMBLOB」。 所以我做了轉換,現在它的工作。

select group_id , CONVERT(SUBSTRING_INDEX(rows, ',', 1), CHAR(1000)) as name from concat