我想在包含特定的unicode空白字符的oracle数据库中查找clobs,但我不知道如何编写select语句。如何从oracle中选择unicode空白字符?
尝试下面的查询,但不知道这是否是正确的方法去做:
select * from mytable where my_clob like '%'|| n'0xEF' || '%';
我想在包含特定的unicode空白字符的oracle数据库中查找clobs,但我不知道如何编写select语句。如何从oracle中选择unicode空白字符?
尝试下面的查询,但不知道这是否是正确的方法去做:
select * from mytable where my_clob like '%'|| n'0xEF' || '%';
如果你知道你要找的字符的字符代码,您可以使用CHR()
来建立一个表达式来查找特定的代码;
SELECT *
FROM mytable
WHERE my_clob LIKE '%' || CHR(15052183) || '%';
我不确定你想要搜索的是什么字符,但我认为这是您要查找的UNISTR
命令。此外,LIKE
将做隐式转换为VARCHAR2
(我认为),所以你只能搜索前4000个字符。试试这个搜索的非换空间:
SELECT *
FROM mytable
WHERE dbms_lob.instr(my_clob, UNISTR('\00A0')) > 0;
https://docs.oracle.com/cd/E11882_01/server.112/e41084/functions224.htm#SQLRF06154
这个工作,非常感谢 – Tim 2013-05-13 00:08:02