sql >> Database >  >> RDS >> PostgreSQL

Is de functie XPath sum of fn:sum geïmplementeerd in PostgreSQL XPath?

Ik kwam hetzelfde probleem tegen en ik ben blij om nog een antwoord op de vraag toe te voegen:

Met PostgreSQL 9.2 heeft de documentatie plotseling nog een zin over de xpath-functie:

Precies wat ik nodig heb! Dus met betrekking tot de vraag is een ander geldig antwoord:Upgrade naar PostgreSQL 9.2. Op het moment dat ik dit schrijf, is versie 9.2 slechts een bètaversie, maar ik kan bevestigen dat dit werkt:

Versiedetails

postgres=# select version();
                                                     version                                                      
------------------------------------------------------------------------------------------------------------------
 PostgreSQL 9.2beta1 on x86_64-unknown-linux-gnu, compiled by gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-52), 64-bit
(1 row)

Demonstratie van oplossing

(Deze demonstratie is gemaakt met Postgre 9.5, omdat ik oorspronkelijk de verkeerde code had geplakt)

postgres=# SELECT xpath('sum(/my:a/value[.>15])', '<my:a xmlns:my="http://example.com">
postgres'# <value>20</value>
postgres'# <value>10</value>
postgres'# <value>30</value>
postgres'# </my:a>',
postgres(# ARRAY[ARRAY['my', 'http://example.com']]);
 xpath 
-------
 {50}
(1 row)


  1. Hoe kan ik de unieke karakters uit een string in Oracle halen?

  2. Postgres full-text zoeken:hoe zoek je meerdere woorden in meerdere velden?

  3. krijg id van laatst ingevoegde record zonder mysql_insert_id() te gebruiken

  4. Strings samenvoegen in SQL