在Oracle中,查询换行符的SQL是什么?

时间:2009-10-13 14:17:54

标签: sql oracle

我需要找到某个列包含换行符的行。

这不起作用: 从[table]中选择*,其中[column]类似'%\ n%'

在SO中,我找到了SQL Server的解决方案: New line in Sql Query

但这在Oracle中不起作用。有没有ANSI SQL解决方案?这应该是标准......

如果没有,Oracle的解决方案是什么?

5 个答案:

答案 0 :(得分:3)

你可以找到CHR(10)字符(换行符):

select * from [table] where instr(column, chr(10)) > 0

答案 1 :(得分:3)

InStr()的替代方法,它更符合问题表达SQL。 IMHO。

select * from [table] where [column] like '%'||chr(10)||'%'

答案 2 :(得分:1)

如果您正在使用Oracle 10g,可以使用

select * from [table] where regexp_like([column], '\n')

答案 3 :(得分:0)

select * from tableNameHere where instr(colNameHere,chr(10))> 0

答案 4 :(得分:-1)

可替换地:

SELECT * FROM [table] WHERE column LIKE "%\n%"

\ n是换行,\ r是回车...