8

sを含む列とその列のいくつかの値を収集しようとしNULLています...しかしcollect_list、s を無視し、値が含まれている列NULLのみを収集します。NULLs を他の値と一緒に取得する方法はありますか?

SELECT col1, col2, collect_list(col3) as col3
FROM (SELECT * FROM table_1 ORDER BY col1, col2, col3)
GROUP BY col1, col2;

実際の col3 値

0.9
NULL
NULL
0.7
0.6 

結果の col3 値

[0.9, 0.7, 0.6]

[0.9, NULL, NULL, 0.7, 0.6]collect_list を適用した後、このようなハイブ ソリューションがあることを期待していました。

4

2 に答える 2

0

注: 列が STRING の場合、外部ファイルにその列のデータがなくても、NULL 値はありません。

「col3 は NULL で、col3 は NULL ではありません」のような検証チェック付きの where 条件を使用できます。

于 2015-08-12T07:30:44.303 に答える