在使用substring()函數時若遇到中文字會被當作一個字
例如 select Substring('123中文456', 5) 傳回結果為 '123中文' 共 7 個char
若要指定傳回5個[char]而不是5個[字]時可用下列做法達成
例如 select Substring('123中文456', 5) 傳回結果為 '123中文' 共 7 個char
若要指定傳回5個[char]而不是5個[字]時可用下列做法達成
先用convert()函數將字串傳轉化為binary類型,再用substring()或left()函數取得定長的字段,最後將結果用convert()轉化回varchar類型.
select convert(varchar(10), substring(convert(binary, '中文測abcde試fghi'),1,10))
--或者
select convert(varchar(10), left(convert(binary, '中文測abcde試fghi'),10))