Критерии выбора в базе данных DB2 для типа данных XML - PullRequest
0 голосов
/ 13 мая 2019

Я пытаюсь выбрать данные, используя критерии выбора из столбца типа данных XML в базе данных DB2.

Следующий запрос работает в oracle

SELECT * from TABLENAME where extractvalue(xmlcolumn,'/row/c2') LIKE '84%'

В MSSQL ниже работает запрос select

SELECT * from TABLENAME where xmlcolumn.value('(/row/c2)[1]', 'VARCHAR(250)') LIKE '84%'

Пожалуйста, предложите то же самое для базы данных DB2

1 Ответ

0 голосов
/ 13 мая 2019

Попробуйте это:

with tablename (id, xmlcolumn) as (
select *
from table(values 
  (1, xmlparse(document '
<row>
  <c2>84123</c2>
</row>
'))
, (2, xmlparse(document '
<row>
  <c2>85123</c2>
</row>
'))
))
select *
from tablename
where xmlexists('$x/row[fn:starts-with(c2, "84")]' passing xmlcolumn as "x")
;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...