【问题标题】:ERROR: syntax error while executing query in PostgreSQL错误:在 PostgreSQL 中执行查询时出现语法错误
【发布时间】:2018-08-05 06:05:05
【问题描述】:

我正在尝试 SQL 查询并收到此错误:

错误:在“出租日期”或附近出现语法错误
第 4 行:选择 I.store_id,EXTRACT(MONTH FROM TIMESTAMP rental_date) ...

这是我的代码:

select 
    store_id, Month_Name, max(RentOrder) as maximum_order 
from 
    (select 
         I.store_id, EXTRACT(MONTH FROM TIMESTAMP rental_date) as Month_Name,
         count(rental_id) as RentOrder 
     from 
         Rental R 
     inner join 
         Inventory I on R.inventory_id = I.inventory_id 
     group by 
         I.store_id, EXTRACT(MONTH FROM TIMESTAMP rental_date) ) as T 
group by 
    store_id, Month_Name

我已经检查了与我的数据库完全匹配的变量名称。

但是,它仍然抛出语法问题。协助将不胜感激解决这个问题!

【问题讨论】:

    标签: sql postgresql


    【解决方案1】:

    我只是从您的查询 A 中删除时间戳,其余的都很好

     select 
            store_id, Month_Name, max(RentOrder) as maximum_order 
        from 
            (select 
                 I.store_id, EXTRACT(MONTH FROM rental_date) as Month_Name,
                 count(rental_id) as RentOrder 
             from 
                 Rental R 
             inner join 
                 Inventory I on R.inventory_id = I.inventory_id 
             group by 
                 I.store_id, EXTRACT(MONTH FROM rental_date) ) as T 
        group by 
            store_id, Month_Name
    

    【讨论】:

      【解决方案2】:

      我假设rental_date 已经是timestamp。删除EXTRACT() 调用中的TIMESTAMP

      ...
      EXTRACT(MONTH FROM rental_date)
      ...
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-06-13
        • 2022-01-16
        • 2020-09-21
        • 2016-11-11
        • 1970-01-01
        相关资源
        最近更新 更多