使用LIKE

时间:2017-02-20 11:23:29

标签: postgresql sql-like

我使用的是Postgres服务器,但是我对XML数据类型有困难。 关于Postgres和XML的在线信息似乎有限。

我正在尝试将一列XML数据插入一个临时表,其中Location节点包含一个下划线,使用类似于SQL中的LIKE

<Country>
    <ID>813</ID>
    <Location>IB_202</Loction>
</Country>

我正在使用此SQL查询来获取数据

SELECT CAST(xpath('/Country/Location/text()', penDetails) as text[])
FROM "dbSystemCheck".tbl_countryitems
WHERE personId = 314
AND CAST(xpath('/Country/Location/text()', penDetails) LIKE '%[_]%'
LIMIT 10

临时表的设置与原始数据表相同,我希望只拆分位置。

我已经读过需要转义下划线因此[]

1 个答案:

答案 0 :(得分:0)

  

我已经读过需要转义下划线因此[]

方括号在SQL LIKE语句中没有特殊含义。如果要转义下划线,则需要指定ESCAPE字符:

AND CAST(xpath('/Country/Location/text()', penDetails) LIKE '%\_%' ESCAPE '\'

如果需要,您还可以使用其他转义字符:

AND CAST(xpath('/Country/Location/text()', penDetails) LIKE '%#_%' ESCAPE '#'