SQL 查询字段包含特殊符号的数据
SQL查询字段长度用 length,可以用length 查询出表里该字段的最长长度 max(length(COLUMN_NAME)),也可以查询字段长度大于某一值有多少条记录eg: select * from XX.TB_NAME where length(COLUMN_NAME) > 19;
SQL 查询字段包含特殊符号的数据
-
SQL 查询字段中包含单引号
查询的时候输入两个单引号就转义了 ,chr(39)
表示单引号、chr(40)
表示双引号
eg:select * from XX.TB_NAME where COLUMN_NAME like '%''%';
eg:select * from XX.TB_NAME where COLUMN_NAME like '%'|| CHR(39)||'%'
-
SQL 查询字段包含回车或换行符的数据
eg:select * from TB_NAME where COLUMN_NAME like '%'|| CHR(10)||'%'
orCOLUMN_NAME like CONCAT("%",CHR(13),"%")
-
备注:数据库中,CHR(13)表示回车符;CHR(10)表示换行符;CHR函数里的数字是字符的ASCII码;
select ASCII(' —— ') from dual;
移除换行符:REPLACE(COLUMN_NAME ,CHR(10),'')
移除回车符:REPLACE(COLUMN_NAME ,CHR(13),'')
数据进行处理时,要将表中存在换行的数据进行去除换行变成一行,例如导出数据 或者往 impala传数据,若源表数据中存在换行 会导致数据错位
eg:REPLACE(REPLACE(REPLACE(COLUMN_NAME , CHR(10) , '') , CHR(13) , '') , ' ' ' ,'')
-
SQL 查询字段长度用
length
可以用length
查询出表里该字段的最长长度max(length(COLUMN_NAME))
,也可以查询字段长度大于某一值有多少条记录
eg:select * from XX.TB_NAME where length(COLUMN_NAME) > 19;
更多推荐
所有评论(0)