2008/9/11 Tobias Anstett <tobias.anstett@xxxxxxxxxxxxxxxxxxxxx>: > Hi, > > > > in my special case I'd like to check if a XML[] is empty, because postgres > doesn't implement any equality operators, this is not a 'simple' task. > > > > My current solution is: > > > > SELECT * FROM sometable WHERE XMLSERIALIZE(CONTENT ((XPATH('/a:bar, > somexmlcolumn, ARRAY[ARRAY['a', 'http://foo]]))[1]) AS text)<>'' > > > > But there must be a better way – maybe I missed something important - I also > tried queries like the following: > > > > SELECT * FROM sometable WHERE (XPATH('/a:bar', somexmlcolumn, > ARRAY[ARRAY['a', 'http://foo']]))<>('{}'::XML[]) > > > > Any ideas and feedback are welcome. > > > > Cheers, Tobias What about array_upper(): select array_upper('{}'::XML[], 1) NULL will be returned if the array is empty in 1-dim. -- Hitoshi Harada