效果示意
本文将介绍如何在图表中添加国旗、男女等 emoji 表情图,效果如下图所示
实现方法
总体实现逻辑是通过 case when 函数将 emoji 拼接到原有字符串中。
以国家为例,在添加 emoji 图标之前,是这样的:
可以参考如下步骤添加表情:
打开字段管理页面
添加计算字段
字段表达式参考如下:
CASE
WHEN [国家]='中国' then concat([国家],' 🇨🇳')
WHEN [国家]='印度' then concat([国家],' 🇮🇳')
WHEN [国家]='美国' then concat([国家],' 🇺🇸')
WHEN [国家]='印尼' then concat([国家],' 🇮🇩')
WHEN [国家]='巴基斯坦' then concat([国家],' 🇵🇰')
WHEN [国家]='巴西' then concat([国家],' 🇧🇷')
WHEN [国家]='尼日利亚' then concat([国家],' 🇳🇬')
WHEN [国家]='孟加拉' then concat([国家],' 🇧🇩')
WHEN [国家]='俄罗斯' then concat([国家],' 🇷🇺')
WHEN [国家]='墨西哥' then concat([国家],' 🇲🇽')
end
emoji 表情可以通过输入法输入:
使用新添加字段分析数据
MySQL 需注意
如果你使用 MySQL 数据源在添加计算字段时可能会提示“字段表达式错误”,此时查看后台日志可以找到如下异常:
java.sql.SQLException: Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'concat'
解决方案:数据源使用新版本 JDBC 驱动
JDBC 驱动下载地址:Maven Repository: mysql » mysql-connector-java » 8.0.27 (mvnrepository.com)
驱动更换方式可参考使用手册:数据源驱动管理 - DataEase 文档