2016-12-05 9 views
0

を許可されていない私は、次のSQLコマンドを持っている:はSQLScript:スカラー型が

SELECT DFT(weighted, 32768 ORDER BY rel_id).REAL as four FROM :fith 

この関数は、1つのセルに32769個の要素を持つ配列を返します。 enter image description here

ここでは、unnest関数を使用して結果を分割したいと考えています。したがって、結果を変数に保存する必要があります。

次のコマンドは、エラーがスローされます。

my_array = SELECT DFT(weighted, 32768 ORDER BY rel_id).REAL as four FROM :fith; 
===> invalid datatype: Column FOUR of table variable MY_ARRAY has an unsupported data type (ARRAY) 

大丈夫まあ...配列への私のmy_arrayの宣言の後、私はこのエラーを取得しています:

declare my_array double array; 
    my_array = SELECT DFT(weighted, 32768 ORDER BY rel_id).REAL as four FROM :fith; 
==>scalar type is not allowed: MY_ARRAY: 

なぜ私がやりますこのような迂回路でこれをしたいですか? ドキュメントには、

The UNNEST function cannot be referenced directly in a FROM clause of a SELECT statement

何が間違っていますか?私は今何をすることができますか?

答えて

0

問題は、SQL結果を配列に配置しようとしている可能性があります。
しかし、SQL結果をローカルテーブル変数に格納することはできます。

カーソルを作成し、結果セットにループします。スレッドHANA: Split string?

で説明したように、その後 、カスタム分割文字列関数を使用して、セル・コンテンツを分割することができますループボディ内

関連する問題