2016-12-10 24 views
4

AWS Athenaを使用してS3のcsvデータファイルを照会しようとしていますが、csvファイルに複数の日付列がありますが、Athenaの列タイプには「日付」がありません。日付の列を照会できませんでした。AWS Athenaで「日付」列を定義する方法は?

提案がありますか?

答えて

3

実際、Athenaには列の日付があります。

ここでは、日付を含む表の短いサンプルです。

CSV:

2016-10-12,2016-10-01,hello,world1 
2016-10-13,2016-10-01,hello,world2 
2016-10-14,2016-10-01,hello,world3 
2016-10-15,2016-10-01,hello,world4 

DDL:

CREATE EXTERNAL TABLE test (
    startdate date, 
    enddate date, 
    val1 string, 
    val2 string 
) 
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe' 
WITH SERDEPROPERTIES (
    'serialization.format' = ',', 
    'field.delim' = ',' 
) LOCATION 's3://test-data/test/'; 

QUERY:

select * from test where startdate > DATE'2016-10-13'; 
+0

はい、私は私が「日付」タイプを使用するDDLをオーバーライドすることができます気づいたが、UIから、「日付」は列タイプのドロップダウンメニューでは発生しません、その場合はわかりません意図的なものかどうか。 – ciphor

+0

実際、UIはそのオプションを提供していません。私はこれまでこれを使っていませんでした。 –

0

アマゾンアテナは、Apacheハイブを使用しています。 Apache Hiveでは、Hive 0.12.0以降で 'date'のprimitive_typeを使用できます。私はテストし、現在のAthenaの実装で動作することを確認しました。ドキュメントへ

リンク:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL

関連する問題