Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/77.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 Apache Drill上的union中为NULL_Sql_Null_Apache Drill_Mapr - Fatal编程技术网

Sql Apache Drill上的union中为NULL

Sql Apache Drill上的union中为NULL,sql,null,apache-drill,mapr,Sql,Null,Apache Drill,Mapr,我有一个查询,需要使用Union来获取一行中的所有日期。Union中不支持NULL。请注意,这是一个示例查询 Select ID, Supplydate as A_SupplyDate,OrderDate as A_Orderdate, NULL as B_SupplyDate,NULL as B_OrderDate from tbl where Category='A' union Select ID, NULL

我有一个查询,需要使用Union来获取一行中的所有日期。Union中不支持NULL。请注意,这是一个示例查询

       Select ID, Supplydate as A_SupplyDate,OrderDate as A_Orderdate,
           NULL as B_SupplyDate,NULL as B_OrderDate 
           from tbl where Category='A'
    union
       Select ID, NULL as A_SupplyDate,NULL as A_Orderdate,
           Supplydate as B_SupplyDate,OrderDate as B_OrderDate 
              from tbl where Category='B'

将null强制转换为适当的数据类型,例如
Cast(null作为bigint)

如果null不起作用,为什么不尝试“”呢?我想显示null,不确定IFNULL在这种情况下是否有效我明白了-你现在得到的错误到底是什么?非法使用null你在没有联合的常规查询中也会得到同样的错误吗?好的,那么就把它放空白,然后再加上null如果空白-我会在上面调整代码只要替换
nullif(1,1)
就足够让它运行了。看起来有点傻。
select id, nullif(a_supplydate,'')a_supplydate, a_orderdate, nullif(b_supplydate,'')b_supplydate, b_orderdate from    
  (Select ID, Supplydate as A_SupplyDate,OrderDate as A_Orderdate,
           '' as B_SupplyDate,NULL as B_OrderDate 
           from tbl where Category='A'
    union
       Select ID, '' as A_SupplyDate,NULL as A_Orderdate,
           Supplydate as B_SupplyDate,OrderDate as B_OrderDate 
              from tbl where Category='B')A