Xml 从Postgres中的bytea列读取Int值

Xml 从Postgres中的bytea列读取Int值,xml,postgresql,xpath,Xml,Postgresql,Xpath,我需要从Postgres中名为attributes(存储XML)的bytea列中获取一个int值。以下是列中可能包含的属性的示例XML: <?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> <properties> <entry key="product.na

我需要从Postgres中名为attributes(存储XML)的bytea列中获取一个int值。以下是列中可能包含的属性的示例XML:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<entry key="product.name">DISC.22%</entry>
</properties>

光盘。22%

我需要得到22 Int值(DISC.22%)。在Postgres中有没有这样做的方法?

您可以尝试使用
convert\u from(string bytea,src\u encoding name)
将您的
bytea
转换为实际文本

然后将
text
转换为
XML
并使用
xpath
获取您的值

或者只需regexp
文本


此链接可能很有用:,。

为什么不将XML存储为<代码>XML类型?或者只是简单的纯
文本
。为什么用二进制
bytea
处理文本数据?