sql查询字段中的换行符
需求是这样的,产品表里面混进去了部分坏数据,这些数据的poiid中有换行符,需要把这些poiid都查询出来。有两个库,一个oracle,一个mysql
网上搜了一下。找到了这个:
关于SQL的换行符和字符串连接符,在MySQL、SQL Server和Oracle中均有不同,下面以列表显示。
MySQL |
SQL Server |
Oracle |
|
换行符 |
\n或\r\n或CHAR(10) |
CHAR(13) |
CHR(10) |
字符串连接符 |
CONCAT() |
+ |
||或CONCAT() |
Sql语句这样就容易写了。
Oracle:
select * from base_product p where regexp_like(poiid,chr(10))
select * from base_product where poiid like '%' || chr(10)||'%'
mysql:
select * from hd1309_merge_api_dest where poiid like CONCAT('%',char(10),'%')
mongodb中也有这样的数据,同事给了例子是这样的:
{"baseinfo.poiid":"B02F0
0"}
因为mongodb中查询貌似很繁琐。就不去深究了。