Red Hat 9 で PostgreSQL を学習してます。
PostgreSQL は Red Hat 9 の CD に含まれていた
rpm パッケージでインストールしました。
PostgreSQL のバージョンは 7.3.2-3 です。

LIKE の勉強中に、納得できないことがあり悩んでます。

psql で以下のような操作を行いました。
最後の DELETE コマンドは、
%から始まる str を持つ行を削除したかったのですが、
全ての行が削除されてしまいます。
%から始まる str を持つ行を削除するには、
この方法は誤りですか?
それとも PostgreSQL のバグですか?

test=> CREATE TABLE tbl_name ( str CHAR(8) );
CREATE TABLE
test=> INSERT INTO tbl_name VALUES ( 'abc' );
INSERT 17056 1
test=> INSERT INTO tbl_name VALUES ( '%z' );
INSERT 17057 1
test=> INSERT INTO tbl_name VALUES ( 'xyz' );
INSERT 17058 1
test=> SELECT * FROM tbl_name;
   str
----------
 abc
 %z
 xyz
(3 rows)

test=> DELETE FROM tbl_name WHERE str LIKE '\%%';
DELETE 3


-- K.Yamamoto