[pgsql-jp: 30049] 月数の取得(datetime関数の代替)

Hisashi Chiba ch-999 @ beige.plala.or.jp
2003年 5月 27日 (火) 09:26:54 JST


PostgreSQL のバージョンを上げようとして、標題の事で躓いています。

従来、PostgreSQL7.2で次のシェルスクリプトで正常に稼働していたのですが、

MM=`psql -d zaimu -A -t -c "select to_char(datetime(to_char(MIN(keiri_date),'9999-99-99')),'MM')
from daily;"`
TM=`psql -d zaimu -A -t -c "select to_char(datetime(to_char(MIN(keiri_date),'9999-99-99')),'MM')
from temp;"`
if [ "$MM" != "$TM" ] ; then

#ここで、$MM と $TM は文字列として考えています。

これと全く同じスクリプトを、PostgreSQL7.3.2 で実行すると

ERROR:  Function datetime(text) does not exist
        Unable to identify a function that satisfies the given argument types
        You may need to add explicit typecasts

の様なメッセージが表示され、上手く動いていません。

PostgreSQL のバージョンが上がると、サポートされなくなる関数があるのは、
何となく知っていたのですが。

ユーザー会のWebで検索してみましたが、条件指定が悪いのか見つからず、他の方法もな
かなか思いつかないので、良い方法がありましたら教えて頂ければありがたいのですが。





pgsql-jp メーリングリストの案内