0

1 つのテーブルに 3 つの列が含まれていて、次のようなクエリをレンダリングするとします。

SELECT col1, col2, col3, null as col4 from table;

この場合、null 値は適切に反映されません。UNION 操作で「ランタイム NULL 例外」というエラーが発生しました。これについて助けてください

4

2 に答える 2

0

いくつかのサンプルテーブルでこれを試してみましたが、エラーなしで機能しました。クエリの例:

select * from
(select col1, NULL as col2 from table1 LIMIT 10

UNION ALL

select col1, col2 from table2LIMIT 10) q1
于 2014-09-26T13:35:22.253 に答える
0

これを使用している Hadoop のディストリビューション/バージョン。IDHでこれを試してみましたが、うまくいきました。完全なエラーメッセージも貼り付けられますか

ハイブ (デフォルト)> テーブル 4 を記述します。

わかった

fld1 文字列

fld2 文字列

ハイブ (デフォルト)> テーブル 4 から fld3 として fld1、fld2、null を選択します。

1ヌル

B1ヌル

C 1ヌル

質問者のコメントに従って以下を追加すると、

このキャストを試してみましたが、現在は文字列として記述されています。必要に応じてキャストできます

table4 から fld1、fld2、cast(null as string) fld3 としてテーブル table6 を作成します。

ハイブ (デフォルト)> テーブル 6 を記述します。わかった

fld1 文字列 fld2 文字列 fld3 文字列

于 2013-09-16T08:01:27.007 に答える