Add tinterval comparison operators.
authorThomas G. Lockhart
Sat, 20 Sep 1997 16:29:38 +0000 (16:29 +0000)
committerThomas G. Lockhart
Sat, 20 Sep 1997 16:29:38 +0000 (16:29 +0000)
Add integer/money arithmetic.

src/include/catalog/pg_operator.h
src/include/catalog/pg_proc.h

index fdc90746328f131b9b464d03d0faa547f4959222..e1942f175555f7c83477fa9fee173d698f3cdcd2 100644 (file)
@@ -7,7 +7,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- * $Id: pg_operator.h,v 1.15 1997/09/08 02:35:20 momjian Exp $
+ * $Id: pg_operator.h,v 1.16 1997/09/20 16:29:36 thomas Exp $
  *
  * NOTES
  *   the genbki.sh script reads this file and generates .bki
@@ -244,7 +244,7 @@ DATA(insert OID = 568 (  "<"       PGUID 0 b t f 703 703  16 569 571 0 0 reltimelt
 DATA(insert OID = 569 (  ">"      PGUID 0 b t f 703 703  16 568 570 0 0 reltimegt - - ));
 DATA(insert OID = 570 (  "<="     PGUID 0 b t f 703 703  16 571 569 0 0 reltimele - - ));
 DATA(insert OID = 571 (  ">="     PGUID 0 b t f 703 703  16 570 568 0 0 reltimege - - ));
-DATA(insert OID = 572 (  "="      PGUID 0 b t t 704 704  16 572   0   0   0 intervaleq - - ));
+DATA(insert OID = 572 (  "~="     PGUID 0 b t t 704 704  16 572   0   0   0 intervalsame - - ));
 DATA(insert OID = 573 (  "<<"     PGUID 0 b t f 704 704  16   0   0   0   0 intervalct - - ));
 DATA(insert OID = 574 (  "&&"     PGUID 0 b t f 704 704  16   0   0   0   0 intervalov - - ));
 DATA(insert OID = 575 (  "#="     PGUID 0 b t f 704 703  16   0 576   0 568 intervalleneq - - ));
@@ -399,6 +399,13 @@ DATA(insert OID =  807 (  "/"     PGUID 0 b t f  603  600  603    0  0 0 0 box_div
 DATA(insert OID =  808 (  "?-"    PGUID 0 b t f  600  600   16  808  0 0 0 point_horiz - - ));
 DATA(insert OID =  809 (  "?|"    PGUID 0 b t f  600  600   16  809  0 0 0 point_vert - - ));
 
+DATA(insert OID = 811 (  "="      PGUID 0 b t t 704 704  16 811   0   0   0 intervaleq - - ));
+DATA(insert OID = 812 (  "<>"     PGUID 0 b t t 704 704  16 812   0   0   0 intervalne - - ));
+DATA(insert OID = 813 (  "<"      PGUID 0 b t t 704 704  16 813   0   0   0 intervallt - - ));
+DATA(insert OID = 814 (  ">"      PGUID 0 b t t 704 704  16 814   0   0   0 intervalgt - - ));
+DATA(insert OID = 815 (  "<="     PGUID 0 b t t 704 704  16 815   0   0   0 intervalle - - ));
+DATA(insert OID = 816 (  ">="     PGUID 0 b t t 704 704  16 816   0   0   0 intervalge - - ));
+
 DATA(insert OID = 830 (  "<"      PGUID 0 b t f  810  810  16 834 833  0 0 oidint2lt intltsel intltjoinsel ));
 DATA(insert OID = 831 (  "<="     PGUID 0 b t f  810  810  16 833 834  0 0 oidint2le intltsel intltjoinsel ));
 DATA(insert OID = 832 (  "="      PGUID 0 b t f  810  810  16 832 835  0 0 oidint2eq intltsel intltjoinsel ));
@@ -419,8 +426,19 @@ DATA(insert OID = 904 (  "<="     PGUID 0 b t f  790  790  16 905 903  0 0 cash_le
 DATA(insert OID = 905 (  ">="     PGUID 0 b t f  790  790  16 904 902  0 0 cash_ge intgtsel intgtjoinsel ));
 DATA(insert OID = 906 (  "+"      PGUID 0 b t f  790  790  790 906   0   0   0 cash_pl - - ));
 DATA(insert OID = 907 (  "-"      PGUID 0 b t f  790  790  790   0   0   0   0 cash_mi - - ));
-DATA(insert OID = 908 (  "*"      PGUID 0 b t f  790  701  790 909   0   0   0 cash_mul - - ));
-DATA(insert OID = 909 (  "/"      PGUID 0 b t f  790  701  790   0   0   0   0 cash_div - - ));
+DATA(insert OID = 908 (  "*"      PGUID 0 b t f  790  701  790 916   0   0   0 cash_mul_flt8 - - ));
+DATA(insert OID = 909 (  "/"      PGUID 0 b t f  790  701  790   0   0   0   0 cash_div_flt8 - - ));
+DATA(insert OID = 912 (  "*"      PGUID 0 b t f  790  23   790 917   0   0   0 cash_mul_int4 - - ));
+DATA(insert OID = 913 (  "/"      PGUID 0 b t f  790  23   790   0   0   0   0 cash_div_int4 - - ));
+DATA(insert OID = 914 (  "*"      PGUID 0 b t f  790  21   790 918   0   0   0 cash_mul_int2 - - ));
+DATA(insert OID = 915 (  "/"      PGUID 0 b t f  790  21   790   0   0   0   0 cash_div_int2 - - ));
+DATA(insert OID = 916 (  "*"      PGUID 0 b t f  701  790  790 908   0   0   0 flt8_mul_cash - - ));
+DATA(insert OID = 917 (  "*"      PGUID 0 b t f  23  790   790 912   0   0   0 int4_mul_cash - - ));
+DATA(insert OID = 918 (  "*"      PGUID 0 b t f  21  790   790 914   0   0   0 int2_mul_cash - - ));
+
+DATA(insert OID = 950 (  "*"      PGUID 0 b t f  790  700  790 988   0   0   0 cash_mul_flt4 - - ));
+DATA(insert OID = 951 (  "/"      PGUID 0 b t f  790  700  790   0   0   0   0 cash_div_flt4 - - ));
+DATA(insert OID = 988 (  "*"      PGUID 0 b t f  700  790  790 950   0   0   0 flt4_mul_cash - - ));
 
 DATA(insert OID = 930 (  "<"      PGUID 0 b t f  910  910  16 934 933  0 0 oidint4lt intltsel intltjoinsel ));
 DATA(insert OID = 931 (  "<="     PGUID 0 b t f  910  910  16 933 934  0 0 oidint4le intltsel intltjoinsel ));
index 7cfe1d027e7c1520d591e2727fc8ab2696f066c9..1b1240df13d3be55aaf33a0fc21f89f37d502706 100644 (file)
@@ -6,7 +6,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- * $Id: pg_proc.h,v 1.30 1997/09/08 21:51:29 momjian Exp $
+ * $Id: pg_proc.h,v 1.31 1997/09/20 16:29:38 thomas Exp $
  *
  * NOTES
  *   The script catalog/genbki.sh reads this file and generates .bki
@@ -341,7 +341,7 @@ DATA(insert OID = 259 (  reltimelt         PGUID 11 f t f 2 f 16 "703 703" 100 0 0 1
 DATA(insert OID = 260 (  reltimegt        PGUID 11 f t f 2 f 16 "703 703" 100 0 0 100  foo bar ));
 DATA(insert OID = 261 (  reltimele        PGUID 11 f t f 2 f 16 "703 703" 100 0 0 100  foo bar ));
 DATA(insert OID = 262 (  reltimege        PGUID 11 f t f 2 f 16 "703 703" 100 0 0 100  foo bar ));
-DATA(insert OID = 263 (  intervaleq           PGUID 11 f t f 2 f 16 "704 704" 100 0 0 100  foo bar ));
+DATA(insert OID = 263 (  intervalsame     PGUID 11 f t f 2 f 16 "704 704" 100 0 0 100  foo bar ));
 DATA(insert OID = 264 (  intervalct           PGUID 11 f t f 2 f 16 "704 704" 100 0 0 100  foo bar ));
 DATA(insert OID = 265 (  intervalov           PGUID 11 f t f 2 f 16 "704 704" 100 0 0 100  foo bar ));
 DATA(insert OID = 266 (  intervalleneq    PGUID 11 f t f 2 f 16 "704 703" 100 0 0 100  foo bar ));
@@ -616,6 +616,13 @@ DATA(insert OID = 780 (  gistmarkpos      PGUID 11 f t f 1 f 23 "0" 100 0 0 100  f
 DATA(insert OID = 781 (  gistrestrpos     PGUID 11 f t f 1 f 23 "0" 100 0 0 100  foo bar ));
 DATA(insert OID = 782 (  gistbuild        PGUID 11 f t f 9 f 23 "0" 100 0 0 100  foo bar ));
 
+DATA(insert OID = 784 (  intervaleq           PGUID 11 f t f 2 f 16 "704 704" 100 0 0 100  foo bar ));
+DATA(insert OID = 785 (  intervalne           PGUID 11 f t f 2 f 16 "704 704" 100 0 0 100  foo bar ));
+DATA(insert OID = 786 (  intervallt           PGUID 11 f t f 2 f 16 "704 704" 100 0 0 100  foo bar ));
+DATA(insert OID = 787 (  intervalgt           PGUID 11 f t f 2 f 16 "704 704" 100 0 0 100  foo bar ));
+DATA(insert OID = 788 (  intervalle           PGUID 11 f t f 2 f 16 "704 704" 100 0 0 100  foo bar ));
+DATA(insert OID = 789 (  intervalge           PGUID 11 f t f 2 f 16 "704 704" 100 0 0 100  foo bar ));
+
 /* OIDS 800 - 899 */
 
 DATA(insert OID = 820 (  oidint2in        PGUID 11 f t f 1 f 810 "0" 100 0 0 100  foo bar));
@@ -650,6 +657,17 @@ DATA(insert OID =  859 (  namenlike           PGUID 11 f t f 2 f 16 "19 25" 100 0 0 10
 DATA(insert OID =  860 (  char16like      PGUID 11 f t f 2 f 16 "20 25" 100 0 0 100  foo bar ));
 DATA(insert OID =  861 (  char16nlike     PGUID 11 f t f 2 f 16 "20 25" 100 0 0 100  foo bar ));
 
+DATA(insert OID =  846 (  cash_mul_flt4           PGUID 11 f t f 2 f 790 "790 700" 100 0 0 100  foo bar ));
+DATA(insert OID =  847 (  cash_div_flt4           PGUID 11 f t f 2 f 790 "790 700" 100 0 0 100  foo bar ));
+DATA(insert OID =  848 (  flt4_mul_cash           PGUID 11 f t f 2 f 790 "700 790" 100 0 0 100  foo bar ));
+
+DATA(insert OID =  862 (  int4_mul_cash           PGUID 11 f t f 2 f 790 "23 790" 100 0 0 100  foo bar ));
+DATA(insert OID =  863 (  int2_mul_cash           PGUID 11 f t f 2 f 790 "21 790" 100 0 0 100  foo bar ));
+DATA(insert OID =  864 (  cash_mul_int4           PGUID 11 f t f 2 f 790 "790 23" 100 0 0 100  foo bar ));
+DATA(insert OID =  865 (  cash_div_int4           PGUID 11 f t f 2 f 790 "790 23" 100 0 0 100  foo bar ));
+DATA(insert OID =  866 (  cash_mul_int2           PGUID 11 f t f 2 f 790 "790 21" 100 0 0 100  foo bar ));
+DATA(insert OID =  867 (  cash_div_int2           PGUID 11 f t f 2 f 790 "790 21" 100 0 0 100  foo bar ));
+
 DATA(insert OID =  886 (  cash_in         PGUID 11 f t f 1 f 790 "0" 100 0 0 100  foo bar ));
 DATA(insert OID =  887 (  cash_out        PGUID 11 f t f 1 f  23 "0" 100 0 0 100  foo bar ));
 DATA(insert OID =  888 (  cash_eq         PGUID 11 f t f 2 f  16 "790 790" 100 0 0 100  foo bar ));
@@ -660,11 +678,13 @@ DATA(insert OID =  892 (  cash_gt        PGUID 11 f t f 2 f  16 "790 790" 100 0 0 1
 DATA(insert OID =  893 (  cash_ge         PGUID 11 f t f 2 f  16 "790 790" 100 0 0 100  foo bar ));
 DATA(insert OID =  894 (  cash_pl         PGUID 11 f t f 2 f 790 "790 790" 100 0 0 100  foo bar ));
 DATA(insert OID =  895 (  cash_mi         PGUID 11 f t f 2 f 790 "790 790" 100 0 0 100  foo bar ));
-DATA(insert OID =  896 (  cash_mul        PGUID 11 f t f 2 f 790 "790 701" 100 0 0 100  foo bar ));
-DATA(insert OID =  897 (  cash_div        PGUID 11 f t f 2 f 790 "790 701" 100 0 0 100  foo bar ));
+DATA(insert OID =  896 (  cash_mul_flt8           PGUID 11 f t f 2 f 790 "790 701" 100 0 0 100  foo bar ));
+DATA(insert OID =  897 (  cash_div_flt8           PGUID 11 f t f 2 f 790 "790 701" 100 0 0 100  foo bar ));
 DATA(insert OID =  898 (  cashlarger      PGUID 11 f t f 2 f 790 "790 790" 100 0 0 100  foo bar ));
 DATA(insert OID =  899 (  cashsmaller     PGUID 11 f t f 2 f 790 "790 790" 100 0 0 100  foo bar ));
 
+DATA(insert OID =  919 (  flt8_mul_cash           PGUID 11 f t f 2 f 790 "701 790" 100 0 0 100  foo bar ));
+
 /* OIDS 900 - 999 */
 DATA(insert OID = 920 (  oidint4in        PGUID 11 f t f 1 f 910 "0" 100 0 0 100  foo bar));
 DATA(insert OID = 921 (  oidint4out           PGUID 11 f t f 1 f 19 "0" 100 0 0 100  foo bar));
@@ -730,6 +750,7 @@ DATA(insert OID = 984 (  path_n_eq         PGUID 11 f t f 2 f 16 "602 602" 100 0 0 1
 DATA(insert OID = 985 (  path_n_le        PGUID 11 f t f 2 f 16 "602 602" 100 0 0 100  foo bar ));
 DATA(insert OID = 986 (  path_n_ge        PGUID 11 f t f 2 f 16 "602 602" 100 0 0 100  foo bar ));
 DATA(insert OID = 987 (  path_length      PGUID 11 f t f 1 f 701 "602" 100 0 1 0  foo bar ));
+DATA(insert OID = 988 (  point_ne         PGUID 11 f t f 2 f 16 "600 600" 100 0 0 100  foo bar ));
 DATA(insert OID = 989 (  point_vert           PGUID 11 f t f 2 f 16 "600 600" 100 0 0 100  foo bar ));
 DATA(insert OID = 990 (  point_horiz      PGUID 11 f t f 2 f 16 "600 600" 100 0 0 100  foo bar ));
 DATA(insert OID = 991 (  point_distance    PGUID 11 f t f 2 f 701 "600 600" 100 0 0 100  foo bar ));