我在 postgresql 中编写函数时遇到问题,该函数获取 xml 数据的输入,然后获取所有节点,并且对于以 work 'key' 结尾的节点调用函数。例如,我必须这样做:
function readdata(data xml) RETURNS VOID AS $$
INSERT INTO data_table SELECT FROM xpath('//text()',data)
一些xml是这样的:
< node1>sometext< /node1>
< node2_key>anyvalue< /node2_key>
< node3_key>integer< /node3_key>
< node4>anyvalue< /node4>
但我不知道如何check_val('node2',valueof node2_key )
在从数据参数中选择时调用函数。
我试图实现的是:在我的 SELECT 在 myfunction 中,当它们不以单词'key'结尾时,它给了我节点的值,而以它结尾的节点给了我 check_val 函数的结果。
有没有办法用 postgresql 9.1 做到这一点?我将不胜感激任何代码示例。