2017-07-02 2 views
2

誰もこのSQLクエリでエラーが発生し続ける理由を教えてください。そうMYSQLエラー:SQLSTATE [42000]:構文エラーまたはアクセス違反:1248すべての派生テーブルには独自のエイリアスが必要です

  select hour , price , date 
      from 
      (
       select Hour(c_date) as hour , avg_price AS price , c_date as date 
       from brc_table 
       where c_date >= date_sub(now(), interval 1 Week) 
      ) 
      group by date 
+0

このようなエラーはかなり明確です。しかし、 ')'の後のテーブルエイリアス。ただし、クエリはまだ意味をなさない。あなたは何をしようとしているのですか?集約されていない列を持つ集約クエリを持つことは理にかなっていません。 –

答えて

0

あなたは(....選択)フォーム、派生テーブルに名前をASSINGなければなりません は、例えばを追加:トン広告(からのエンド)MySQLで

 select hour , price , date 
     from 
     (
      select Hour(c_date) as hour , avg_price AS price , c_date as date 
      from brc_table 
      where c_date >= date_sub(now(), interval 1 Week) 
     ) t 
     group by date 
0

DATEを「予約語」であるので、あなたはdateという名前の列を持つことができない、とあなたは別名で単語dateを使用することはできません(AS dateのように。)

あなたは「日付」以外の名前を選択するか、または必要があるのいずれか引用する必要があります

`date` 
関連する問題