sql >> Databáze >  >> RDS >> PostgreSQL

XPath1 v SQL/XML, count elements vrací prázdné

UPRAVIT :Jak jsem poznamenal v komentářích níže a jak je uvedeno v této odpovědi SO , tento problém byl zjevně řešen v Postgresql 9.2. Tato odpověď uvádí:

Níže je zbytek mé původní odpovědi:

Zdá se, že toto je známé omezení v xpath() Postgresql funkce - pouze výrazy, které se vyhodnotí jako množina uzlů, vrátí cokoliv; Výrazy XPath, které by vrátily skalární hodnotu, vrátí pouze prázdné pole.

Některá vyhledávání na Googlu odhalují určitou diskuzi o tom asi před 2 lety, především od osoby jménem Florian Pflug:

http://postgresql.1045698.n5.nabble.com/PATCH-Bug-in-XPATH-if-expression-returns-a-scalar-value-td4440233.html


Vyvinul opravu, která údajně řeší problém a která je připojena k následujícímu vláknu (ačkoli si nejsem úplně jistý, že se jedná o nejnovější verzi):

http://www.postgresql.org /message-id/[email protected]


Zdá se, že existuje nějaká diskuse o výhodách a nevýhodách jeho patche, takže doporučuji pročíst si tato vlákna, abyste věděli, o co jde:

http://www.postgresql.org/message-id/example @sqldat.com http://www.postgresql.org/message-id/example @sqldat.com



  1. Jak to uděláte v mysql nebo rails

  2. Vypočítejte delta (rozdíl aktuálního a předchozího řádku) v sql

  3. Jak používat 2 různé databázové adaptéry (SQL Server a PostgreSQL) v Rails ve stejném prostředí?

  4. Jak používat více databází pro jednu aplikaci rails 3.1 v Heroku?