[pgsql-jp: 25388] 6.5.3と7.2の表の結合について

藤村和彦 fujimurak @ dream.com
2002年 3月 23日 (土) 11:46:39 JST


はじめまして。藤村と申します。
PostgreSQLのバージョンを6.5.3から7.2に変更した際、下記のSQL文で結果が異
なります。SQL文も問題あることも認識しておりますが、PostgreSQLのSQL分の解
釈が異なっているように思われるのですが、違いますでしょうか?
情報を持っておられる方いらっしゃいましたら、ご教授お願い申し上げます。

---------------------------------------------------
●環境 
shohin テーブル
  製品番号をキーに(INDEXを作っています)'SKHHLU%'の該当データは102件(11
万件中)
tokuisaki テーブル 4286件
  得意先コードをキーに(INDEXを作っています)テーブルAとリレーションが張
られています。
●問題のSQL
   select * from shohin,tokuisaki where seihin_no like 'SKHHLU%';
   検索結果     V6.5.3 ... 102件
                V7.2 ... 4286x102 件

●EXPLAINの結果
→6.5.3
=> explain select * from shohin,tokuisaki where seihin_no like 'SKHHLU%';
NOTICE:  QUERY PLAN:
Nested Loop  (cost=1463.20 rows=4286 width=284)
  ->  Index Scan using seihin_no_index on shohin  (cost=1285.76 rows=1 width=256)
  ->  Seq Scan on tokuisaki  (cost=177.44 rows=4286 width=28)

→7.2
# explain select count(*) from shohin,tokuisaki where seihin_no like 'SKHHLU%'
NOTICE:  QUERY PLAN:
Aggregate  (cost=80649.38..80649.38 rows=1 width=0)
  ->  Nested Loop  (cost=0.00..74306.26 rows=2537248 width=0)
        ->  Index Scan using seihin_no_index on shohin  (cost=0.00..2249.85 rows=592 width=0)
        ->  Seq Scan on tokuisaki  (cost=0.00..78.86 rows=4286 width=0)
EXPLAIN
-- 
藤村 <fujimurak @ dream.com>





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