

> FAILED: ParseException line 1:2 cannot recognize input near '(' 'Select' '*'

と出ます。何が間違ってますか？

[code]

    (
        Select
          *
        , Cast(Concat(Substr(timestamp, 1, 4), '-', Substr(timestamp, 5, 2), '-', Substr(timestamp, 7, 2), ' ', Substr(timestamp, 9, 2), ':', Substr(timestamp, 11, 2), ':', Substr(timestamp, 13, 2)) As timestamp) As fcd_timestamp
        From
          test
        Where
          st='${env:20151001}'
          And '${env:lastDate}' <= Substr(timestamp, 1, 8)
          And Substr(timestamp, 1, 8) <= '${env:1101}'
          And Substr(timestamp, 1, 8) <= Substr(up_time, 1, 8)
      ) axis
    
[/code]


CC BY-SA 3.0
2016-07-13T07:42:33.560
27597
2016-11-24T04:29:13.463
2016-07-13T08:01:38.923
15185
17154
question
amazon hadoop
FAILED: ParseException line 1:2 cannot recognize input near '(' 'Select' '*'とでます。


こちらSQLの実行エンジンはHiveということでよいでしょうか。  
このクエリをサブクエリとして使うのでなければ下記のように書けば動くと思います。

[code]

    Select
      *
    , Cast(Concat(Substr(timestamp, 1, 4), '-', Substr(timestamp, 5, 2), '-', Substr(timestamp, 7, 2), ' ', Substr(timestamp, 9, 2), ':', Substr(timestamp, 11, 2), ':', Substr(timestamp, 13, 2)) As timestamp) As fcd_timestamp
    From
      test
    Where
      st='${env:20151001}'
      And '${env:lastDate}' <= Substr(timestamp, 1, 8)
      And Substr(timestamp, 1, 8) <= '${env:1101}'
      And Substr(timestamp, 1, 8) <= Substr(up_time, 1, 8)
    
[/code]

このクエリの結果を更に他のクエリに与える場合にはご質問のように書くことができますが、その場合には上位に位置するクエリが必要になります。

[code]

    SELECT
      axis.hoge
    FROM
    (
      -- 質問のクエリ
    ) axis
    
[/code]


CC BY-SA 3.0
2016-11-24T04:29:13.463
30639
2016-11-24T04:29:13.463
541
27597
answer