2016-08-03 4 views
1

私は 'column'テーブルを分割する構文を理解することができません。ここで私に失敗する例とそれに多くのバリエーションがあります。SnappyDataの列テーブルにデータを分割するにはどうすればよいですか?

CREATE TABLE SENSOR_DATA_COL_BY_YEAR USING column OPTIONS(PARTITION_BY year_num, buckets '11') AS (SELECT sensor_id,metric,collection_time,value,sensor_time,year AS year_num, month AS month_num from STAGING_1); 

...エラーです。

エラー38000:(SQLSTATE = 38000重要度= -1) (SERVER = 172.31.8.115 [1528]、スレッド[DRDAConnThread_34,5、gemfirexd.daemons]) 例外「無効な入力 'C'、 、列OPTIONS(PARTITION_BY YEAR_NUM、バケット '11')を使用して、テーブル SENSOR_DATA_COL_BY_YEARをCREATE(AS sensor_id、メトリック、COLLECTION_TIME、値、sensor_timeを選択:dmlOperation、挿入、 withIdentifier、選択またはプット(ライン1、列1)が予想年AS year_num、 月、STAGING_1からのAS month_num)^; ' の式を評価している間にスローされました。 PARTITION_BY句で指定

答えて

2

列名は引用符 "YEAR_NUM" にする必要があります

修正クエリ:

(、PARTITION_BY "YEAR_NUM" バケツ '11')列オプションを使用してテーブルSENSOR_DATA_COL_BY_YEARの作成]を選択します(AS sensor_id、メトリック、collection_time、値、sensor_time、年AS year_num、月AS_STANING_numからの月)

+0

これは1列で機能します。さて、私はyear_numとmonth_numの両方でパーティションを作成しようとしましたが、シンタックスは使用できませんでした。この構文は複数のパーティションの列をサポートしていますか?もしそうなら、その外観はどうなりますか? – Jason

+0

複数列のパーティションby句の構文はPARTITION_BY 'year_num、sensor_id'です。カラム名は引用符で区切ります。 – suranjan

関連する問題