NULL в союзе по Apache Drill - PullRequest
0 голосов
/ 03 мая 2018

У меня есть запрос, в котором мне нужно использовать 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'

1 Ответ

0 голосов
/ 03 мая 2018
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
...