mybatis的sql中使用concat查詢結果是亂碼處理
阿新 • • 發佈:2019-01-14
轉載: https://blog.csdn.net/liuqiang211/article/details/51734163
當mybatis中的sql語句使用concat拼接是 查詢結果是亂碼一般原因是
concat拼接的型別不一樣 一個是數字型別 一個是字元型別 就會出現亂碼
解決方法
select 1 id,'1' pid , concat('所有案件','(',cast(count(1) as char),')') name, 'true' isOpen from zc_busi_oeinfo a WHERE a.oestatus >0 UNIONALL select 2 id,'1' pid , concat('待稽核的案件','(',cast(count(1) as char),')') name, 'true' isOpen from zc_busi_oeinfo a where a.oestatus not IN (6,17) AND a.oestatus >0 UNION ALL select 3 id,'1' pid , concat('已結案','(',cast(count(1) as char),')') name, 'true' isOpen from zc_busi_oeinfo a where a.oestatus =17
轉載: https://www.cnblogs.com/chenqionghe/p/4675844.html
cast(value as type) 利用cast()指定型別,
MySQL 的CAST()和CONVERT()函式可用來獲取一個型別的值,併產生另一個型別的值。兩者具體的語法如下
就是CAST(xxx AS 型別), CONVERT(xxx,型別)。
可以轉換的型別是有限制的。這個型別可以是以下值其中的一個:
- 二進位制,同帶binary字首的效果 : BINARY
- 字元型,可帶引數 : CHAR()
- 日期 : DATE
- 時間: TIME
- 日期時間型 : DATETIME
- 浮點數 : DECIMAL
- 整數 : SIGNED
- 無符號整數 : UNSIGNED
帶有USING的CONVERT() 被用來在不同的字符集之間轉化資料。在 MySQL中, 自動譯碼名和相應的字符集名稱相同。例如。 這個語句將伺服器的預設字符集中的字串 'abc'轉化為utf8字符集中相應的字串:
SELECT CONVERT('中文' USING utf8);
有時候可能要結合使用...