- ---------------------------------------------------------------------------
- --
- -- float.sql-
- -- test float4, float8 adt
- --
- --
- -- Copyright (c) 1994-5, Regents of the University of California
- --
- -- $Id: float.sql,v 1.1.1.1 1996/07/09 06:22:30 scrappy Exp $
- --
- ---------------------------------------------------------------------------
- --
- -- float4
- --
- create table fl (x float4);
- insert into fl values ( 3.14 );
- insert into fl values ( 147.0 );
- insert into fl values ( 3.14 );
- insert into fl values ( -3.14 );
- select * from fl;
- -- float literals
- select * from fl where x = 3.14;
- select * from fl where x <> 3.14;
- select * from fl where x < 3.14;
- select * from fl where x <= 3.14;
- select * from fl where x > 3.14;
- select * from fl where x >= 3.14;
- -- adt constant without cast (test coercion)
- select * from fl where x = '3.14';
- select * from fl where x <> '3.14';
- select * from fl where x < '3.14';
- select * from fl where x <= '3.14';
- select * from fl where x > '3.14';
- select * from fl where x >= '3.14';
- -- adt constant with float4 cast (test float4 opers)
- select * from fl where x = '3.14'::float4;
- select * from fl where x <> '3.14'::float4;
- select * from fl where x < '3.14'::float4;
- select * from fl where x <= '3.14'::float4;
- select * from fl where x > '3.14'::float4;
- select * from fl where x >= '3.14'::float4;
- -- adt constant with float8 cast (test float48 opers)
- select * from fl where x = '3.14'::float8;
- select * from fl where x <> '3.14'::float8;
- select * from fl where x < '3.14'::float8;
- select * from fl where x <= '3.14'::float8;
- select * from fl where x > '3.14'::float8;
- select * from fl where x >= '3.14'::float8;
- -- try other operators
- update fl set x = x + 2.2;
- select * from fl;
- update fl set x = x - 2.2;
- select * from fl;
- update fl set x = x * 2.2;
- select * from fl;
- update fl set x = x / 2.2;
- select * from fl;
- --
- -- float8
- --
- create table fl8 (y float8);
- insert into fl8 values ( '3.14'::float8 );
- insert into fl8 values ( '147.0'::float8 );
- insert into fl8 values ( '3.140000001'::float8 );
- insert into fl8 values ( '-3.14'::float8);
- select * from fl8;
- -- float literals
- select * from fl8 where y = 3.14;
- select * from fl8 where y <> 3.14;
- select * from fl8 where y < 3.14;
- select * from fl8 where y <= 3.14;
- select * from fl8 where y > 3.14;
- select * from fl8 where y >= 3.14;
- -- adt constant without cast (test coercion)
- select * from fl8 where y = '3.14';
- select * from fl8 where y <> '3.14';
- select * from fl8 where y < '3.14';
- select * from fl8 where y <= '3.14';
- select * from fl8 where y > '3.14';
- select * from fl8 where y >= '3.14';
- -- adt constant with float4 cast (test float84 opers)
- select * from fl8 where y = '3.14'::float4;
- select * from fl8 where y <> '3.14'::float4;
- select * from fl8 where y < '3.14'::float4;
- select * from fl8 where y <= '3.14'::float4;
- select * from fl8 where y > '3.14'::float4;
- select * from fl8 where y >= '3.14'::float4;
- -- adt constant with float8 cast (test float8 opers)
- select * from fl8 where y = '3.14'::float8;
- select * from fl8 where y <> '3.14'::float8;
- select * from fl8 where y < '3.14'::float8;
- select * from fl8 where y <= '3.14'::float8;
- select * from fl8 where y > '3.14'::float8;
- select * from fl8 where y >= '3.14'::float8;
- -- try other operators
- update fl8 set y = y + '2.2'::float8;
- select * from fl8;
- update fl8 set y = y - '2.2'::float8;
- select * from fl8;
- update fl8 set y = y * '2.2'::float8;
- select * from fl8;
- update fl8 set y = y / '2.2'::float8;
- select * from fl8;
- -- drop tables
- drop table fl;
- drop table fl8;