solr对mysql中tinyint字段的处理方法,例如把1变成true
在使用DIH(Data Import Handler)创建索引时,mysql中的tinyint类型的字段会被转换为java的boolean类型,值为true、false,很多情况下这是不符合要求的。如果要保持数字类型,需要在sql语句中转换
例如:
select id,convert(catid,SIGNED) as catid from table_a;
解释:
convert()函数可以完成数据类型的转换,with_costs是要转换的字段名,tinyint类型,SIGNED是要转换的目标类型,这里记得写上as XXX即字段的新别名,经测试不写as XXX转换无效。
注:可以转换的类型是有限制的。这个类型可以是以下值其中的一个:
二进制,同带binary前缀的效果 : BINARY
字符型,可带参数 : CHAR()
日期 : DATE
时间: TIME
日期时间型 : DATETIME
浮点数 : DECIMAL
整数 : SIGNED
无符号整数 : UNSIGNED
另外,这个问题在5.1版本上测试,问题依旧。
最新内容
- Linux系统下systemctl常用命令以及service文件配置
- CI PHP7 session 不能读取的问题
- centos 7.4 基本配置
- mysqldump导入导出数据库总结
- Linux下的tar压缩解压缩常用命令
- 查看 SELinux状态、临时关闭SELinux、永久关闭SELinux
- centos6.8 yum安装mysql 5.6
- CentOS之7与6的区别2
- CentOS之7与6的区别1
- Mysql 忘记root密码的完美解决方法
- 输入密码登录,Linux scp (rsync)设置nohup后台运行
- ubantu zabbix部署——安装配置zabbix agent详解
- Zabbix客户端(agent端口)安装配置
- CentOS 7添加开机启动服务/脚本
- 阿里云机器配置 centos 6.8