Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL选择空_Sql_Oracle - Fatal编程技术网

SQL选择空

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,就像我上面所说的那个样 在没有选择任何行的情况下,如何

我在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,就像我上面所说的那个样

在没有选择任何行的情况下,如何实现这一点?

您可以使用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或其他标准。