[pgsql-jp: 32521] no longer exist とは

西村 篤史 atsushi_nishimura @ lets-heart.co.jp
2004年 3月 20日 (土) 10:32:01 JST


西村@和歌山市です。初めまして。
ちょっと練習で作ってたSQL文で判らない事が表示されたので教えてください。
# 長文ですみません

・PostgreSQL 7.2.1 on i686-pc-linux-gnu, compiled by GCC 2.95.4
・Common SQL Environment 1.59
・ PostgerSQL ODBC Driver 07.01.0006 日本語版
この環境で実行しております。

 4つビューと1つのテーブルを inner join して結果を得ようとしております。
# まぁビュー名は業務に関わっているモノですが...
1) V_単品別売上推移
2) V_部門別合計項目
3) V_単品別粗利益額
4) V_単品別粗利益率
5) m_部門

いざ実行してみると、
ERROR:  Relation "v_医単品別売上推移" with OID 35523460 no longer exists
というエラーが発生します。
それぞれのビューを select文で実行すると、別にエラーは起きないのですが、
それらを組み合わせたselect文となると、こうなってしまいます。

google などで検索して、昨晩かけて vacuumdb -f <db名> したのですが、まだ
こうなります。

このエラーの意味と対処法をご存じでしたら、ご教授の程宜しくお願いいたします。

# 以下はエラーとなったSQL文です。
SELECT
 v_単品別売上推移.部門cd   as 部門cd ,
 m_部門.部門名称             as 部門名称 ,
 v_単品別売上推移.JAN      as JAN  ,
 v_単品別売上推移.商品名称 as 商品名称 ,
 v_単品別売上推移.標準価格 as 標準価格 ,
 v_単品別売上推移.通常売価 as 通常売価 ,
 v_単品別売上推移.通常仕価 as 通常仕価 ,
 v_単品別売上推移.合計個数 as 販売個数 ,
 v_単品別売上推移.合計金額 as 売上金額 ,
 V_単品別粗利益額.粗利益額 as 粗利益額 ,
 V_単品別粗利益率.粗利益率 as 粗利益率 ,
 v_部門別合計項目.合計金額 as 部門別売上金額 ,
 v_部門別合計項目.合計仕価 as 部門別総仕価 ,
 v_部門別合計項目.粗利額   as 部門別総粗利額


FROM
(((V_単品別粗利益額 inner join V_単品別粗利益率
 on V_単品別粗利益額.JAN = V_単品別粗利益率.JAN)
 inner join v_単品別売上推移 on V_単品別粗利益額.jan = v_単品別売上推移.JAN)
 inner join V_部門別合計項目 on V_単品別粗利益額.部門cd = v_部門別合計項目.部門cd)
 inner join m_部門 on V_単品別粗利益額.部門cd = m_部門.部門cd



WHERE
 (v_単品別売上推移.部門cd <= 1)
and
 (v_単品別売上推移.合計金額 > 0)

GROUP BY
 v_単品別売上推移.部門cd   ,
 m_部門.部門名称             ,
 v_単品別売上推移.JAN      ,
 v_単品別売上推移.商品名称 ,
 v_単品別売上推移.標準価格 ,
 v_単品別売上推移.通常売価 ,
 v_単品別売上推移.通常仕価 ,
 v_単品別売上推移.合計個数 ,
 v_単品別売上推移.合計金額 ,
 V_単品別粗利益額.粗利益額 ,
 V_単品別粗利益率.粗利益率 ,
 v_部門別合計項目.合計金額 ,
 v_部門別合計項目.合計仕価 ,
 v_部門別合計項目.粗利額

order by
 v_単品別売上推移.部門cd




--
 ATSUSHI Nishimura <atsushi_nishimura @ lets-heart.co.jp>




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