2010年12月 2日

[pgsql-jp: 40569] float4とreal

コヤマと申します。再度、質問させて下さい。

Postgres8.4で

CREATE TABLE AAA(
C1 REAL PRIMARY KEY
);
INSERT INTO AAA VALUES(0.618);


とした場合で、

SELECT * FROM AAA WHERE C1=0.618 では 選択できないのは理解できますが、

SELECT * FROM AAA WHERE C1=FLOAT4(0.618) が可能なのに、
SELECT * FROM AAA WHERE C1=REAL(0.618) ができないのはどうしてなんでしょうか?

データ型の説明では
名称 別名
real float4
となっているので、逆ならばわかるのですが・・・・・。それとも、マニュアルの間違いで、
名称がfloat4で、別名がreal が正解なんですかね。

ちなみに、
SELECT * FROM AAA WHERE C1=CAST(0.618 AS REAL)
SELECT * FROM AAA WHERE C1=CAST(0.618 AS FLOAT4)
は、両方ともできます。

ご存じの方がおられましたら、ご返答宜しくお願い致します。


投稿者 xml-rpc : 2010年12月 2日 22:25
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/100414
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。