int4.out

来自「PostgreSQL7.4.6 for Linux」· OUT 代码 · 共 298 行

OUT
298
字号
---- INT4-- WARNING: int4 operators never check for over/underflow!-- Some of these answers are consequently numerically incorrect.--CREATE TABLE INT4_TBL(f1 int4);INSERT INTO INT4_TBL(f1) VALUES ('0');INSERT INTO INT4_TBL(f1) VALUES ('123456');INSERT INTO INT4_TBL(f1) VALUES ('-123456');INSERT INTO INT4_TBL(f1) VALUES ('34.5');ERROR:  invalid input syntax for integer: "34.5"-- largest and smallest values INSERT INTO INT4_TBL(f1) VALUES ('2147483647');INSERT INTO INT4_TBL(f1) VALUES ('-2147483647');-- bad input values -- should give warnings INSERT INTO INT4_TBL(f1) VALUES ('1000000000000');ERROR:  value "1000000000000" is out of range for type integerINSERT INTO INT4_TBL(f1) VALUES ('asdf');ERROR:  invalid input syntax for integer: "asdf"SELECT '' AS five, INT4_TBL.*; five |     f1      ------+-------------      |           0      |      123456      |     -123456      |  2147483647      | -2147483647(5 rows)SELECT '' AS four, i.* FROM INT4_TBL i WHERE i.f1 <> int2 '0'; four |     f1      ------+-------------      |      123456      |     -123456      |  2147483647      | -2147483647(4 rows)SELECT '' AS four, i.* FROM INT4_TBL i WHERE i.f1 <> int4 '0'; four |     f1      ------+-------------      |      123456      |     -123456      |  2147483647      | -2147483647(4 rows)SELECT '' AS one, i.* FROM INT4_TBL i WHERE i.f1 = int2 '0'; one | f1 -----+----     |  0(1 row)SELECT '' AS one, i.* FROM INT4_TBL i WHERE i.f1 = int4 '0'; one | f1 -----+----     |  0(1 row)SELECT '' AS two, i.* FROM INT4_TBL i WHERE i.f1 < int2 '0'; two |     f1      -----+-------------     |     -123456     | -2147483647(2 rows)SELECT '' AS two, i.* FROM INT4_TBL i WHERE i.f1 < int4 '0'; two |     f1      -----+-------------     |     -123456     | -2147483647(2 rows)SELECT '' AS three, i.* FROM INT4_TBL i WHERE i.f1 <= int2 '0'; three |     f1      -------+-------------       |           0       |     -123456       | -2147483647(3 rows)SELECT '' AS three, i.* FROM INT4_TBL i WHERE i.f1 <= int4 '0'; three |     f1      -------+-------------       |           0       |     -123456       | -2147483647(3 rows)SELECT '' AS two, i.* FROM INT4_TBL i WHERE i.f1 > int2 '0'; two |     f1     -----+------------     |     123456     | 2147483647(2 rows)SELECT '' AS two, i.* FROM INT4_TBL i WHERE i.f1 > int4 '0'; two |     f1     -----+------------     |     123456     | 2147483647(2 rows)SELECT '' AS three, i.* FROM INT4_TBL i WHERE i.f1 >= int2 '0'; three |     f1     -------+------------       |          0       |     123456       | 2147483647(3 rows)SELECT '' AS three, i.* FROM INT4_TBL i WHERE i.f1 >= int4 '0'; three |     f1     -------+------------       |          0       |     123456       | 2147483647(3 rows)-- positive odds SELECT '' AS one, i.* FROM INT4_TBL i WHERE (i.f1 % int2 '2') = int2 '1'; one |     f1     -----+------------     | 2147483647(1 row)-- any evens SELECT '' AS three, i.* FROM INT4_TBL i WHERE (i.f1 % int4 '2') = int2 '0'; three |   f1    -------+---------       |       0       |  123456       | -123456(3 rows)SELECT '' AS five, i.f1, i.f1 * int2 '2' AS x FROM INT4_TBL i; five |     f1      |    x    ------+-------------+---------      |           0 |       0      |      123456 |  246912      |     -123456 | -246912      |  2147483647 |      -2      | -2147483647 |       2(5 rows)SELECT '' AS five, i.f1, i.f1 * int4 '2' AS x FROM INT4_TBL i; five |     f1      |    x    ------+-------------+---------      |           0 |       0      |      123456 |  246912      |     -123456 | -246912      |  2147483647 |      -2      | -2147483647 |       2(5 rows)SELECT '' AS five, i.f1, i.f1 + int2 '2' AS x FROM INT4_TBL i; five |     f1      |      x      ------+-------------+-------------      |           0 |           2      |      123456 |      123458      |     -123456 |     -123454      |  2147483647 | -2147483647      | -2147483647 | -2147483645(5 rows)SELECT '' AS five, i.f1, i.f1 + int4 '2' AS x FROM INT4_TBL i; five |     f1      |      x      ------+-------------+-------------      |           0 |           2      |      123456 |      123458      |     -123456 |     -123454      |  2147483647 | -2147483647      | -2147483647 | -2147483645(5 rows)SELECT '' AS five, i.f1, i.f1 - int2 '2' AS x FROM INT4_TBL i; five |     f1      |     x      ------+-------------+------------      |           0 |         -2      |      123456 |     123454      |     -123456 |    -123458      |  2147483647 | 2147483645      | -2147483647 | 2147483647(5 rows)SELECT '' AS five, i.f1, i.f1 - int4 '2' AS x FROM INT4_TBL i; five |     f1      |     x      ------+-------------+------------      |           0 |         -2      |      123456 |     123454      |     -123456 |    -123458      |  2147483647 | 2147483645      | -2147483647 | 2147483647(5 rows)SELECT '' AS five, i.f1, i.f1 / int2 '2' AS x FROM INT4_TBL i; five |     f1      |      x      ------+-------------+-------------      |           0 |           0      |      123456 |       61728      |     -123456 |      -61728      |  2147483647 |  1073741823      | -2147483647 | -1073741823(5 rows)SELECT '' AS five, i.f1, i.f1 / int4 '2' AS x FROM INT4_TBL i; five |     f1      |      x      ------+-------------+-------------      |           0 |           0      |      123456 |       61728      |     -123456 |      -61728      |  2147483647 |  1073741823      | -2147483647 | -1073741823(5 rows)---- more complex expressions---- variations on unary minus parsingSELECT -2+3 AS one; one -----   1(1 row)SELECT 4-2 AS two; two -----   2(1 row)SELECT 2- -1 AS three; three -------     3(1 row)SELECT 2 - -2 AS four; four ------    4(1 row)SELECT int2 '2' * int2 '2' = int2 '16' / int2 '4' AS true; true ------ t(1 row)SELECT int4 '2' * int2 '2' = int2 '16' / int4 '4' AS true; true ------ t(1 row)SELECT int2 '2' * int4 '2' = int4 '16' / int2 '4' AS true; true ------ t(1 row)SELECT int4 '1000' < int4 '999' AS false; false ------- f(1 row)SELECT 4! AS twenty_four; twenty_four -------------          24(1 row)SELECT !!3 AS six; six -----   6(1 row)SELECT 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 AS ten; ten -----  10(1 row)SELECT 2 + 2 / 2 AS three; three -------     3(1 row)SELECT (2 + 2) / 2 AS two; two -----   2(1 row)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?