Firebirdの標準関数

【改訂第3版】 SQLポケットリファレンス (POCKET REFERENCE)
以前のFirebirdは標準で使える関数が極端に少なかったらしいが、現在のバージョンではすでに一般的なSQLデータベースで使える関数はたいてい使えるようになっている。で、どういう関数が使えるかを調べるにはどうすればいいか。2ch有志が復活させたWikiでも個別の関数まではフォローできていない。今のところはFirebird配布元サイトで公開されているリファレンスを読むのが手っ取り早く調べられると思う。

http://www.firebirdsql.org/en/reference-manuals/

バージョンごとにたくさんのマニュアルがあるけど、使用できるSQLステートメントと関数を調べたければ、「Reference Material」以下にある「Language Reference」を読めばたいていわかる。

リファレンスにある使用可能な関数はざっとこれだけある。

LIST(), MAX(), MIN(), ABS(), ACOS(), ASCII_CHAR(), ASCII_VAL(), ASIN(), ATAN(), ATAN2(), BIN_AND(), BIN_OR(), BIN_SHL(), BIN_SHR(), BIN_XOR(), BIT_LENGTH(), CAST(), CEIL(), CEILING(), CHAR_LENGTH(), CHARACTER_LENGTH(), CHAR_TO_UUID(), COALESCE(), COS(), COSH(), COT(), DATEADD(), DATEDIFF(), DECODE(), EXP(), EXTRACT(), FLOOR(), GEN_ID(), GEN_UUID(), HASH(), IIF(), LEFT(), LN(), LOG(), LOG10(), LOWER(), LPAD(), MAXVALUE(), MINVALUE(), MOD(), NULLIF(), OCTET_LENGTH(), OVERLAY(), PI(), POSITION(), POWER(), RAND(), RDB$GET_CONTEXT(), RDB$SET_CONTEXT(), REPLACE(), REVERSE(), RIGHT(), ROUND(), RPAD(), SIGN(), SIN(), SINH(), SQRT(), SUBSTRING(), TAN(), TANH(), TRIM(), TRUNC(), UPPER(), UUID_TO_CHAR()

他のSQLデータベースをある程度使ったことがあれば、使いたい関数が名前でわかるんじゃないかな。で、眺めていたらSUM()が見つからないのが気になってしまった。使えることは使えるみたいだけど、全部網羅するには他のドキュメントにも目を通さないといけないのか。

SQL> select sum(filesize), extension from files_todvdr group by extension;

       SUM EXTENSION                                                                        
========== =========
 552021488 .asf                                                                             
1355048562 .rar                                                                             
 488756318 .wmv                                                                             
1693593279 .zip                                                                             

SQL>