В Oracle, что такое SQL для запроса на наличие перевода строки?

Мне нужно найти строки, где определенный столбец содержит перевод строки.

Это не работает: выберите * из [таблицы], где [столбец], как '% \ n%'

В SO я нашел решение для SQL Server: новая строка в Sql Query

Но это не работает в Oracle. Есть ли какое-либо решение ANSI SQL? Это должно быть стандартом ...

Если нет, то каково решение в Oracle?

13.10.2009 14:17:54
5 ОТВЕТОВ
РЕШЕНИЕ

Альтернатива InStr (), которая выражает SQL немного больше в соответствии с проблемой. ИМХО.

select * from [table] where [column] like '%'||chr(10)||'%'
3
13.10.2009 14:38:45

Вы можете найти символ CHR (10) (символ новой строки):

select * from [table] where instr(column, chr(10)) > 0
3
13.10.2009 14:31:07

выберите * из tableNameHere, где instr (colNameHere, chr (10))> 0

0
13.10.2009 14:31:34

В качестве альтернативы:

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

\ n - перевод строки, \ r - возврат каретки ...

-1
13.10.2009 14:36:48

Если вы работаете с Oracle 10g и выше, вы можете использовать

select * from [table] where regexp_like([column], '\n')
1
13.10.2009 18:35:13