今天遇到一个问题,mybatis.xml中打印的sql,复制到navicat后执行结果不一致
select count(1) from table t where substr(content,9,CHAR_LENGTH(content)) in ('第一条文案','第2条文案,'第3条文案',
'第4条文案
这里有换行',
'第5条文案')
这个实际有5条结果,但是从控制台复制mybatis.xml中打印的sql,执行时只有低4条,可能是回车文案导致的。
使用char(10)和char(13)检测,发现第4条文案中检测不到空格和换行,这才意识到可能控制台中打印的是非常规的空格和换行符。
select instr('第4条文案
这里有换行',CHAR(13))