create schema test_var_pop;
set current_schema to 'test_var_pop';
set dolphin.b_compatibility_mode to on;
create table all_types_table (
`int1` tinyint,
`uint1` tinyint unsigned,
`int2` smallint,
`uint2` smallint unsigned,
`int4` integer,
`uint4` integer unsigned,
`int8` bigint,
`uint8` bigint unsigned,
`float4` float4,
`float8` float8,
`numeric` decimal(20, 6),
`bit1` bit(1),
`bit64` bit(64),
`boolean` boolean,
`date` date,
`time` time,
`time4` time(4),
`datetime` datetime,
`datetime4` datetime(4) default '2023-12-30 12:00:12',
`timestamp` timestamp,
`timestamp4` timestamp(4) default '2023-12-30 12:00:12',
`year` year,
`char` char(100),
`varchar` varchar(100),
`binary` binary(100),
`varbinary` varbinary(100),
`tinyblob` tinyblob,
`blob` blob,
`mediumblob` mediumblob,
`longblob` longblob,
`text` text,
`enum_t` enum('a', 'b', 'c'),
`set_t` set('a', 'b', 'c'),
`json` json,
`null` integer
);
NOTICE: CREATE TABLE will create implicit set "all_types_table_set_t_set" for column "all_types_table.set_t"
INSERT INTO all_types_table
VALUES(
1,
1,
1,
1,
1,
1,
1,
1,
1.0,
1.0,
3.14259,
1,
10101100,
1,
'2024-01-11',
'11:47:58',
'11:47:58.7896',
'2024-01-11 11:49:25',
'2024-01-11 11:49:25.1234',
'2024-01-11 11:49:25',
'2024-01-11 11:49:25.1234',
'2024',
'62.345*67-89',
'62.345*67-89',
'67890 - 12345 = 55545',
'67890 - 12345 = 55545',
'67890 - 12345 = 55545',
'67890 - 12345 = 55545',
'67890 - 12345 = 55545',
'67890 - 12345 = 55545',
'67890 - 12345 = 55545',
'b',
'a,b',
json_object('a', 2, 'b', 3),
NULL
);
SELECT VARIANCE(`int1`) OVER () AS `int1` FROM all_types_table;
int1
------
0
(1 row)
SELECT VARIANCE(`uint1`) OVER () AS `uint1` FROM all_types_table;
uint1
-------
0
(1 row)
SELECT VARIANCE(`int2`) OVER () AS `int2` FROM all_types_table;
int2
------
0
(1 row)
SELECT VARIANCE(`uint2`) OVER () AS `uint2` FROM all_types_table;
uint2
-------
0
(1 row)
SELECT VARIANCE(`int4`) OVER () AS `int4` FROM all_types_table;
int4
------
0
(1 row)
SELECT VARIANCE(`uint4`) OVER () AS `uint4` FROM all_types_table;
uint4
-------
0
(1 row)
SELECT VARIANCE(`int8`) OVER () AS `int8` FROM all_types_table;
int8
------
0
(1 row)
SELECT VARIANCE(`uint8`) OVER () AS `uint8` FROM all_types_table;
uint8
-------
0
(1 row)
SELECT VARIANCE(`float4`) OVER () AS `float4` FROM all_types_table;
float4
--------
0
(1 row)
SELECT VARIANCE(`float8`) OVER () AS `float8` FROM all_types_table;
float8
--------
0
(1 row)
SELECT VARIANCE(`numeric`) OVER () AS `numeric` FROM all_types_table;
numeric
---------
0
(1 row)
SELECT VARIANCE(`bit1`) OVER () AS `bit1` FROM all_types_table;
bit1
------
0
(1 row)
SELECT VARIANCE(`bit64`) OVER () AS `bit64` FROM all_types_table;
bit64
-------
0
(1 row)
SELECT VARIANCE(`boolean`) OVER () AS `boolean` FROM all_types_table;
boolean
---------
0
(1 row)
SELECT VARIANCE(`date`) OVER () AS `date` FROM all_types_table;
date
------
0
(1 row)
SELECT VARIANCE(`time`) OVER () AS `time` FROM all_types_table;
time
------
0
(1 row)
SELECT VARIANCE(`time4`) OVER () AS `time4` FROM all_types_table;
time4
-------
0
(1 row)
SELECT VARIANCE(`datetime`) OVER () AS `datetime` FROM all_types_table;
datetime
----------
0
(1 row)
SELECT VARIANCE(`datetime4`) OVER () AS `datetime4` FROM all_types_table;
datetime4
-----------
0
(1 row)
SELECT VARIANCE(`timestamp`) OVER () AS `timestamp` FROM all_types_table;
timestamp
-----------
0
(1 row)
SELECT VARIANCE(`timestamp4`) OVER () AS `timestamp4` FROM all_types_table;
timestamp4
------------
0
(1 row)
SELECT VARIANCE(`year`) OVER () AS `year` FROM all_types_table;
year
------
0
(1 row)
SELECT VARIANCE(`char`) OVER () AS `char` FROM all_types_table;
WARNING: invalid input syntax for type numeric: "62.345*67-89 "
char
------
0
(1 row)
SELECT VARIANCE(`varchar`) OVER () AS `varchar` FROM all_types_table;
WARNING: invalid input syntax for type numeric: "62.345*67-89"
varchar
---------
0
(1 row)
SELECT VARIANCE(`binary`) OVER () AS `binary` FROM all_types_table;
WARNING: invalid input syntax for type double precision: "67890 - 12345 = 55545"
binary
--------
0
(1 row)
SELECT VARIANCE(`varbinary`) OVER () AS `varbinary` FROM all_types_table;
WARNING: invalid input syntax for type double precision: "67890 - 12345 = 55545"
varbinary
-----------
0
(1 row)
SELECT VARIANCE(`tinyblob`) OVER () AS `tinyblob` FROM all_types_table;
WARNING: invalid input syntax for type double precision: "67890 - 12345 = 55545"
tinyblob
----------
0
(1 row)
SELECT VARIANCE(`blob`) OVER () AS `blob` FROM all_types_table;
WARNING: invalid input syntax for type double precision: "67890 - 12345 = 55545"
blob
------
0
(1 row)
SELECT VARIANCE(`mediumblob`) OVER () AS `mediumblob` FROM all_types_table;
WARNING: invalid input syntax for type double precision: "67890 - 12345 = 55545"
mediumblob
------------
0
(1 row)
SELECT VARIANCE(`longblob`) OVER () AS `longblob` FROM all_types_table;
WARNING: invalid input syntax for type double precision: "67890 - 12345 = 55545"
longblob
----------
0
(1 row)
SELECT VARIANCE(`text`) OVER () AS `text` FROM all_types_table;
WARNING: invalid input syntax for type numeric: "67890 - 12345 = 55545"
text
------
0
(1 row)
SELECT VARIANCE(`enum_t`) OVER () AS `enum_t` FROM all_types_table;
enum_t
--------
0
(1 row)
SELECT VARIANCE(`set_t`) OVER () AS `set_t` FROM all_types_table;
set_t
-------
0
(1 row)
SELECT VARIANCE(`json`) OVER () AS `json` FROM all_types_table;
WARNING: invalid input syntax for type numeric: "{"a": 2, "b": 3}"
json
------
0
(1 row)
SELECT VARIANCE(`NULL`) OVER () AS `NULL` FROM all_types_table;
NULL
------
(1 row)
INSERT INTO all_types_table
VALUES(
2,
2,
2,
2,
2,
2,
2,
2,
2.0,
2.0,
2.14259,
0,
10101101,
0,
'2024-02-11',
'12:47:58',
'12:47:58.7896',
'2024-02-11 11:49:25',
'2024-02-11 11:49:25.1234',
'2024-02-11 11:49:25',
'2024-02-11 11:49:25.1234',
'2023',
'61.345*67-89',
'61.345*67-89',
'61890 - 12345 = 55545',
'61890 - 12345 = 55545',
'61890 - 12345 = 55545',
'61890 - 12345 = 55545',
'61890 - 12345 = 55545',
'61890 - 12345 = 55545',
'61890 - 12345 = 55545',
'a',
'a',
json_object('a', 2, 'b', 1),
NULL
);
SELECT VARIANCE(`int1`) OVER () AS `int1` FROM all_types_table;
int1
------------------------
0.25000000000000000000
0.25000000000000000000
(2 rows)
SELECT VARIANCE(`uint1`) OVER () AS `uint1` FROM all_types_table;
uint1
------------------------
0.25000000000000000000
0.25000000000000000000
(2 rows)
SELECT VARIANCE(`int2`) OVER () AS `int2` FROM all_types_table;
int2
------------------------
0.25000000000000000000
0.25000000000000000000
(2 rows)
SELECT VARIANCE(`uint2`) OVER () AS `uint2` FROM all_types_table;
uint2
------------------------
0.25000000000000000000
0.25000000000000000000
(2 rows)
SELECT VARIANCE(`int4`) OVER () AS `int4` FROM all_types_table;
int4
------------------------
0.25000000000000000000
0.25000000000000000000
(2 rows)
SELECT VARIANCE(`uint4`) OVER () AS `uint4` FROM all_types_table;
uint4
------------------------
0.25000000000000000000
0.25000000000000000000
(2 rows)
SELECT VARIANCE(`int8`) OVER () AS `int8` FROM all_types_table;
int8
------------------------
0.25000000000000000000
0.25000000000000000000
(2 rows)
SELECT VARIANCE(`uint8`) OVER () AS `uint8` FROM all_types_table;
uint8
------------------------
0.25000000000000000000
0.25000000000000000000
(2 rows)
SELECT VARIANCE(`float4`) OVER () AS `float4` FROM all_types_table;
float4
--------
0.25
0.25
(2 rows)
SELECT VARIANCE(`float8`) OVER () AS `float8` FROM all_types_table;
float8
--------
0.25
0.25
(2 rows)
SELECT VARIANCE(`numeric`) OVER () AS `numeric` FROM all_types_table;
numeric
------------------------
0.25000000000000000000
0.25000000000000000000
(2 rows)
SELECT VARIANCE(`bit1`) OVER () AS `bit1` FROM all_types_table;
bit1
------------------------
0.25000000000000000000
0.25000000000000000000
(2 rows)
SELECT VARIANCE(`bit64`) OVER () AS `bit64` FROM all_types_table;
bit64
------------------------
0.25000000000000000000
0.25000000000000000000
(2 rows)
SELECT VARIANCE(`boolean`) OVER () AS `boolean` FROM all_types_table;
boolean
------------------------
0.25000000000000000000
0.25000000000000000000
(2 rows)
SELECT VARIANCE(`date`) OVER () AS `date` FROM all_types_table;
date
-----------------------
2500.0000000000000000
2500.0000000000000000
(2 rows)
SELECT VARIANCE(`time`) OVER () AS `time` FROM all_types_table;
time
-----------------------
25000000.000000000000
25000000.000000000000
(2 rows)
SELECT VARIANCE(`time4`) OVER () AS `time4` FROM all_types_table;
time4
-----------------------
25000000.000000000000
25000000.000000000000
(2 rows)
SELECT VARIANCE(`datetime`) OVER () AS `datetime` FROM all_types_table;
datetime
-----------------------
2500000000000000.0000
2500000000000000.0000
(2 rows)
SELECT VARIANCE(`datetime4`) OVER () AS `datetime4` FROM all_types_table;
datetime4
-------------------------------
2500000000000000.000000000000
2500000000000000.000000000000
(2 rows)
SELECT VARIANCE(`timestamp`) OVER () AS `timestamp` FROM all_types_table;
timestamp
-----------------------
2500000000000000.0000
2500000000000000.0000
(2 rows)
SELECT VARIANCE(`timestamp4`) OVER () AS `timestamp4` FROM all_types_table;
timestamp4
-------------------------------
2500000000000000.000000000000
2500000000000000.000000000000
(2 rows)
SELECT VARIANCE(`year`) OVER () AS `year` FROM all_types_table;
year
------------------------
0.25000000000000000000
0.25000000000000000000
(2 rows)
SELECT VARIANCE(`char`) OVER () AS `char` FROM all_types_table;
WARNING: invalid input syntax for type numeric: "62.345*67-89 "
WARNING: invalid input syntax for type numeric: "61.345*67-89 "
char
------------------------
0.25000000000000000000
0.25000000000000000000
(2 rows)
SELECT VARIANCE(`varchar`) OVER () AS `varchar` FROM all_types_table;
WARNING: invalid input syntax for type numeric: "62.345*67-89"
WARNING: invalid input syntax for type numeric: "61.345*67-89"
varchar
------------------------
0.25000000000000000000
0.25000000000000000000
(2 rows)
SELECT VARIANCE(`binary`) OVER () AS `binary` FROM all_types_table;
WARNING: invalid input syntax for type double precision: "67890 - 12345 = 55545"
WARNING: invalid input syntax for type double precision: "61890 - 12345 = 55545"
binary
---------
9000000
9000000
(2 rows)
SELECT VARIANCE(`varbinary`) OVER () AS `varbinary` FROM all_types_table;
WARNING: invalid input syntax for type double precision: "67890 - 12345 = 55545"
WARNING: invalid input syntax for type double precision: "61890 - 12345 = 55545"
varbinary
-----------
9000000
9000000
(2 rows)
SELECT VARIANCE(`tinyblob`) OVER () AS `tinyblob` FROM all_types_table;
WARNING: invalid input syntax for type double precision: "67890 - 12345 = 55545"
WARNING: invalid input syntax for type double precision: "61890 - 12345 = 55545"
tinyblob
----------
9000000
9000000
(2 rows)
SELECT VARIANCE(`blob`) OVER () AS `blob` FROM all_types_table;
WARNING: invalid input syntax for type double precision: "67890 - 12345 = 55545"
WARNING: invalid input syntax for type double precision: "61890 - 12345 = 55545"
blob
---------
9000000
9000000
(2 rows)
SELECT VARIANCE(`mediumblob`) OVER () AS `mediumblob` FROM all_types_table;
WARNING: invalid input syntax for type double precision: "67890 - 12345 = 55545"
WARNING: invalid input syntax for type double precision: "61890 - 12345 = 55545"
mediumblob
------------
9000000
9000000
(2 rows)
SELECT VARIANCE(`longblob`) OVER () AS `longblob` FROM all_types_table;
WARNING: invalid input syntax for type double precision: "67890 - 12345 = 55545"
WARNING: invalid input syntax for type double precision: "61890 - 12345 = 55545"
longblob
----------
9000000
9000000
(2 rows)
SELECT VARIANCE(`text`) OVER () AS `text` FROM all_types_table;
WARNING: invalid input syntax for type numeric: "67890 - 12345 = 55545"
WARNING: invalid input syntax for type numeric: "61890 - 12345 = 55545"
text
----------------------
9000000.000000000000
9000000.000000000000
(2 rows)
SELECT VARIANCE(`enum_t`) OVER () AS `enum_t` FROM all_types_table;
enum_t
------------------------
0.25000000000000000000
0.25000000000000000000
(2 rows)
SELECT VARIANCE(`set_t`) OVER () AS `set_t` FROM all_types_table;
set_t
------------------------
1.00000000000000000000
1.00000000000000000000
(2 rows)
SELECT VARIANCE(`json`) OVER () AS `json` FROM all_types_table;
WARNING: invalid input syntax for type numeric: "{"a": 2, "b": 3}"
WARNING: invalid input syntax for type numeric: "{"a": 2, "b": 1}"
json
------
0
0
(2 rows)
SELECT VARIANCE(`NULL`) OVER () AS `NULL` FROM all_types_table;
NULL
------
(2 rows)
create view test_var_pop_view as select VARIANCE(`json`) OVER () AS `json` FROM all_types_table;
\d test_var_pop_view
View "test_var_pop.test_var_pop_view"
Column | Type | Modifiers
--------+--------+-----------
json | number |
drop view test_var_pop_view;
drop table all_types_table;
set dolphin.b_compatibility_mode to off;
drop schema test_var_pop cascade;
reset current_schema;