将重音转换为原始数据SQL
我有一个使用重音符号的列(BLOB数据)。我想搜索所有具有特定重音的行(不是所有的重音,而是一个特定的重音) 假设我想搜索将重音转换为原始数据SQL,sql,oracle,blob,diacritics,Sql,Oracle,Blob,Diacritics,我有一个使用重音符号的列(BLOB数据)。我想搜索所有具有特定重音的行(不是所有的重音,而是一个特定的重音) 假设我想搜索l'应用程序数据 我使用了下面的查询,但它不起作用 select * from "correspondence" s where dbms_lob.instr(s."__data", utl_raw.cast_to_raw('l'application Data')) > 0 and "externalReferenceNumber"like' 20160929%'
l'应用程序数据
我使用了下面的查询,但它不起作用
select *
from "correspondence" s
where dbms_lob.instr(s."__data", utl_raw.cast_to_raw('l'application Data')) > 0
and "externalReferenceNumber"like' 20160929%'
and "callingapplication"=' CVM'
and rownum < 5
order by s."__id" desc ;
utl_raw.cast_to_raw('l || char(146) ||application Data')
如果要将一个作为文本的一部分,则需要在一行中包含两个
'
utl_raw.cast_to_raw('l''application Data')
甲骨文也有一个古怪的语法替代引号像这样
utl_raw.cast_to_raw(q'!l'application Data!')
q'
后面的字符可以是任何字符,只要它在末尾匹配,并且如果您使用[,或]
在这里看到更多
SO上突出显示的语法似乎被另一种第二种语法迷惑了:)
定义“不工作”。不返回任何行。如果我删除“1”和1后的“坟墓符号”,则结果是正确的。因此,SQl dev无法将char(146)转换为grave符号或varchar2Hi Hogan。我已经试过了,但它不起作用,因为符号“'”不是撇号,而是法语中使用的一个严肃的同意符号。@SombudhyaBasu-如果你想使用扩展字符集,你需要使用前缀
N
Hi Hogan,utl_raw.cast_to_raw(N“l”application Data)这个查询给了我一个错误:ORA-00907:缺少右键parenthesis@SombudhyaBasu-很难说,但在我看来,您使用的是双引号“
,而不是单引号”