On 24.01.2019 11:54, ramsiddu007 wrote:
Dear all,
I hope you are all doing well. Today i got one
requirement, for that i need attribute names as below example.
Xml:
<emp>
<emp_details emp_id="101" emp_name="tom" dept="development"/>
</emp>
In the above sample input xml, i want attributes list of emp_deails like.
Attributes
___________
emp_id
emp_name
dept
Thanking you,
In PostgreSQL 11 (and 10 I think) you can do something like this:
=# CREATE TABLE xmldata AS SELECT xml $$
<emp>
<emp_details emp_id="101" emp_name="tom" dept="development"/>
</emp>
$$
as data;
=# SELECT xmltable.*
FROM xmldata,
xmltable('/emp/emp_details/@*' passing data
columns atrr text path 'name()');
atrr
----------
emp_id
emp_name
dept
--
Arthur Zakirov
Postgres Professional: http://www.postgrespro.com
Russian Postgres Company