如何在DB2数据库中写sql判断字段是否包含特殊内容
db2语法 有无建议呢
你的特殊内容指的什么 like不就能解决么
SQL 查询字段中包含单引号
查询的时候输入两个单引号就转义了 ,chr(39) 表示单引号、chr(40)表示双引号
select * from XX.TB_NAME where COLUMN_NAME like '%''%';
select * from XX.TB_NAME where COLUMN_NAME like '%'|| CHR(39)||'%'
SQL 查询字段包含回车或换行符的数据
select * from TB_NAME where COLUMN_NAME like '%'|| CHR(10)||'%' or COLUMN_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传数据,若源表数据中存在换行 会导致数据错位
REPLACE(REPLACE(REPLACE(COLUMN_NAME , CHR(10) , '') , CHR(13) , '') , ' ' ' ,'')