2012-05-10 13 views
1

我試圖運行下列查詢,但它不工作!在firebird中使用group的錯誤1

select extract(month from flight_date_time) mnt from T_PEREXOD where extract(year from flight_date_time)='2012' 
group by mnt 
order by mnt 

我試着也subquerying

select mnt from (select extract(month from flight_date_time) AS mnt from T_PEREXOD) 
group by mnt 
order by mnt 

,但它會彈出錯誤 無效令牌。

Dynamic SQL Error. 
SQL error code = -104. 
Token unknown - line 1, char 18. 
select. 

這是火鳥版本1的問題??

如何使分組工作沒有任何意見,程序,計算領域等?因爲我不喜歡改變那個數據庫!

回答

3

First - Extract會返回一個smallint或decimal值,以便您的位置錯誤。

二 - 子查詢1.5支持高達

試着改變SELECT EXTRACT(...) as mnt在第一個查詢(如添加)或嘗試使用列索引像

GROUP分組BY 1

ORDER BY 1

firebird 1.0 sql符合性是你可能會感興趣的東西,但這是唯一的Ë我可以找到: http://www.firebirdsql.org/en/sql-conformance/

如果你有我建議更新到FB

+0

最新發布的關於字段別名我像以前沒有嘗試過任何機會,但它沒有工作! –

+0

也嘗試'選擇提取(從flight_date_time的月份)從T_PEREXOD AS mnt GROUP BY 1 ORDER BY 1'但無效的標記。 動態SQL錯誤。 SQL錯誤代碼= -104。 令牌未知 - 第2行,字符10. 1. –

+1

我應該更新到最新版本2.5! –