numerology.sql 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. --
  2. -- NUMEROLOGY
  3. -- Test various combinations of numeric types and functions.
  4. --
  5. --
  6. -- Test implicit type conversions
  7. -- This fails for Postgres v6.1 (and earlier?)
  8. -- so let's try explicit conversions for now - tgl 97/05/07
  9. --
  10. CREATE TABLE TEMP_FLOAT (f1 FLOAT8);
  11. INSERT INTO TEMP_FLOAT (f1)
  12. SELECT float8(f1) FROM INT4_TBL;
  13. INSERT INTO TEMP_FLOAT (f1)
  14. SELECT float8(f1) FROM INT2_TBL;
  15. SELECT f1 FROM TEMP_FLOAT
  16. ORDER BY f1;
  17. -- int4
  18. CREATE TABLE TEMP_INT4 (f1 INT4);
  19. INSERT INTO TEMP_INT4 (f1)
  20. SELECT int4(f1) FROM FLOAT8_TBL
  21. WHERE (f1 > -2147483647) AND (f1 < 2147483647);
  22. INSERT INTO TEMP_INT4 (f1)
  23. SELECT int4(f1) FROM INT2_TBL;
  24. -- int2
  25. CREATE TABLE TEMP_INT2 (f1 INT2);
  26. INSERT INTO TEMP_INT2 (f1)
  27. SELECT int2(f1) FROM FLOAT8_TBL
  28. WHERE (f1 >= -32767) AND (f1 <= 32767);
  29. INSERT INTO TEMP_INT2 (f1)
  30. SELECT int2(f1) FROM INT4_TBL
  31. WHERE (f1 >= -32767) AND (f1 <= 32767);
  32. --
  33. -- Group-by combinations
  34. --
  35. CREATE TABLE TEMP_GROUP (f1 INT4, f2 INT4, f3 FLOAT8);
  36. INSERT INTO TEMP_GROUP
  37. SELECT 1, (- i.f1), (- f.f1)
  38. FROM INT4_TBL i, FLOAT8_TBL f;
  39. DROP TABLE TEMP_INT2;
  40. DROP TABLE TEMP_INT4;
  41. DROP TABLE TEMP_FLOAT;
  42. DROP TABLE TEMP_GROUP;