SQL选择空
我在Oracle 11中有以下代码:SQL选择空,sql,oracle,Sql,Oracle,我在Oracle 11中有以下代码: select xmlelement("foo", xmlagg(xmlelement("bar",myValues))) from someTable where rownum = 0; --Changing the rownum from 0 should give me values 目前的输出是: 相反,我希望它在没有选择行时不返回任何内容或null。否则,它将是一个包含聚合数据的XMLtype,就像我上面所说的那个样 在没有选择任何行的情况下,如何
select xmlelement("foo", xmlagg(xmlelement("bar",myValues))) from someTable where rownum = 0; --Changing the rownum from 0 should give me values
目前的输出是:
相反,我希望它在没有选择行时不返回任何内容或null。否则,它将是一个包含聚合数据的XMLtype,就像我上面所说的那个样
在没有选择任何行的情况下,如何实现这一点?您可以使用getClobval函数转换为CLOB并进行比较
SELECT
xml
FROM
(
SELECT
xmlelement("foo",xmlagg(xmlelement("bar",myvalues) ) ).getclobval() xml
FROM
sometable
)
WHERE
TO_CHAR(xml) != '<foo></foo>';
您可以使用用例选择:
计数时选择大小写*!=0然后XMLEntEngfO,XMLGracxMelEngEntBar,MyValueEnt/P>可以考虑解码函数或NOVALY函数,检查RONNUM=0或其他标准。