From 221d7296aa3c7b55dc054bded1a76570cc5bfb29 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Sat, 28 Dec 1996 02:22:12 +0000 Subject: [PATCH] Here is a bug fix and some spelling changes for the complex number tutorial code. I have also written a complete complex number package based on this tutorial; I will submit this as a contribution soon. Is there a particular format for contributed tar files? I have a C source file, two SQL files, and a Makefile. Thomas Lockhart --- src/tutorial/C-code/complex.c | 4 ++-- src/tutorial/complex.source | 15 ++++++++------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/tutorial/C-code/complex.c b/src/tutorial/C-code/complex.c index bebdd511d4..e554b7fcfb 100644 --- a/src/tutorial/C-code/complex.c +++ b/src/tutorial/C-code/complex.c @@ -113,9 +113,9 @@ int4 complex_abs_cmp(Complex *a, Complex *b) { double amag = Mag(a), bmag = Mag(b); - if (a < b) + if (amag < bmag) return -1; - else if (a > b) + else if (amag > bmag) return 1; else return 0; diff --git a/src/tutorial/complex.source b/src/tutorial/complex.source index af8bd26cc2..82fe4187d9 100644 --- a/src/tutorial/complex.source +++ b/src/tutorial/complex.source @@ -2,12 +2,12 @@ -- -- complex.sql- -- This file shows how to create a new user-defined type and how to --- use them. +-- use this new type. -- -- -- Copyright (c) 1994, Regents of the University of California -- --- $Id: complex.source,v 1.1.1.1 1996/07/09 06:22:34 scrappy Exp $ +-- $Id: complex.source,v 1.2 1996/12/28 02:22:07 momjian Exp $ -- --------------------------------------------------------------------------- @@ -105,7 +105,7 @@ SELECT a + '(1.0,1.0)'::complex AS aa, ----------------------------- -- Creating aggregate functions --- you can also define aggregate functions. The syntax is some what +-- you can also define aggregate functions. The syntax is somewhat -- cryptic but the idea is to express the aggregate in terms of state -- transition functions. ----------------------------- @@ -122,8 +122,8 @@ SELECT complex_sum(a) FROM test_complex; ------------------------------------------------------------------------------- -- ATTENTION! ATTENTION! ATTENTION! -- --- YOU MAY SKIP THE SECTION BELOW ON INTERFACING WITH INDICIES. YOU DON'T -- --- NEED THE FOLLOWING IF YOU DON'T USE INDICIES WITH NEW DATA TYPES. -- +-- YOU MAY SKIP THE SECTION BELOW ON INTERFACING WITH INDICES. YOU DON'T -- +-- NEED THE FOLLOWING IF YOU DON'T USE INDICES WITH NEW DATA TYPES. -- ------------------------------------------------------------------------------- SELECT 'READ ABOVE!' AS STOP; @@ -239,7 +239,8 @@ INSERT INTO pg_amproc (amid, amopclaid, amproc, amprocnum) and proname = 'complex_abs_cmp'; -- now, we can define a btree index on complex types. First, let's populate --- the table (THIS DOESN'T ACTUALLY WORK. YOU NEED MANY MORE TUPLES.) +-- the table. Note that postgres needs many more tuples to start using the +-- btree index during selects. INSERT INTO test_complex VALUES ('(56.0,-22.5)', '(-43.2,-0.07)') INSERT INTO test_complex VALUES ('(-91.9,33.6)', '(8.6,3.0)'); @@ -248,4 +249,4 @@ CREATE INDEX test_cplx_ind ON test_complex SELECT * from test_complex where a = '(56.0,-22.5)'; SELECT * from test_complex where a < '(56.0,-22.5)'; -SELECT * from test_complex where a > '(56.0,-22.5)'; \ No newline at end of file +SELECT * from test_complex where a > '(56.0,-22.5)'; -- 2.11.0