[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 メーリングリストの案内