136 lines
2.4 KiB
Plaintext
136 lines
2.4 KiB
Plaintext
--
|
|
-- num_nulls()
|
|
--
|
|
SELECT num_nonnulls(NULL);
|
|
num_nonnulls
|
|
--------------
|
|
0
|
|
(1 row)
|
|
|
|
SELECT num_nonnulls('1');
|
|
num_nonnulls
|
|
--------------
|
|
1
|
|
(1 row)
|
|
|
|
SELECT num_nonnulls(NULL::text);
|
|
num_nonnulls
|
|
--------------
|
|
0
|
|
(1 row)
|
|
|
|
SELECT num_nonnulls(NULL::text, NULL::int);
|
|
num_nonnulls
|
|
--------------
|
|
0
|
|
(1 row)
|
|
|
|
SELECT num_nonnulls(1, 2, NULL::text, NULL::point, '', int8 '9', 1.0 / NULL);
|
|
num_nonnulls
|
|
--------------
|
|
4
|
|
(1 row)
|
|
|
|
SELECT num_nonnulls(VARIADIC '{1,2,NULL,3}'::int[]);
|
|
num_nonnulls
|
|
--------------
|
|
3
|
|
(1 row)
|
|
|
|
SELECT num_nonnulls(VARIADIC '{"1","2","3","4"}'::text[]);
|
|
num_nonnulls
|
|
--------------
|
|
4
|
|
(1 row)
|
|
|
|
SELECT num_nonnulls(VARIADIC ARRAY(SELECT CASE WHEN i <> 40 THEN i END FROM generate_series(1, 100) i));
|
|
num_nonnulls
|
|
--------------
|
|
99
|
|
(1 row)
|
|
|
|
SELECT num_nulls(NULL);
|
|
num_nulls
|
|
-----------
|
|
1
|
|
(1 row)
|
|
|
|
SELECT num_nulls('1');
|
|
num_nulls
|
|
-----------
|
|
0
|
|
(1 row)
|
|
|
|
SELECT num_nulls(NULL::text);
|
|
num_nulls
|
|
-----------
|
|
1
|
|
(1 row)
|
|
|
|
SELECT num_nulls(NULL::text, NULL::int);
|
|
num_nulls
|
|
-----------
|
|
2
|
|
(1 row)
|
|
|
|
SELECT num_nulls(1, 2, NULL::text, NULL::point, '', int8 '9', 1.0 / NULL);
|
|
num_nulls
|
|
-----------
|
|
3
|
|
(1 row)
|
|
|
|
SELECT num_nulls(VARIADIC '{1,2,NULL,3}'::int[]);
|
|
num_nulls
|
|
-----------
|
|
1
|
|
(1 row)
|
|
|
|
SELECT num_nulls(VARIADIC '{"1","2","3","4"}'::text[]);
|
|
num_nulls
|
|
-----------
|
|
0
|
|
(1 row)
|
|
|
|
SELECT num_nulls(VARIADIC ARRAY(SELECT CASE WHEN i <> 40 THEN i END FROM generate_series(1, 100) i));
|
|
num_nulls
|
|
-----------
|
|
1
|
|
(1 row)
|
|
|
|
-- special cases
|
|
SELECT num_nonnulls(VARIADIC NULL::text[]);
|
|
num_nonnulls
|
|
--------------
|
|
|
|
(1 row)
|
|
|
|
SELECT num_nonnulls(VARIADIC '{}'::int[]);
|
|
num_nonnulls
|
|
--------------
|
|
0
|
|
(1 row)
|
|
|
|
SELECT num_nulls(VARIADIC NULL::text[]);
|
|
num_nulls
|
|
-----------
|
|
|
|
(1 row)
|
|
|
|
SELECT num_nulls(VARIADIC '{}'::int[]);
|
|
num_nulls
|
|
-----------
|
|
0
|
|
(1 row)
|
|
|
|
-- should fail, one or more arguments is required
|
|
SELECT num_nonnulls();
|
|
ERROR: function num_nonnulls() does not exist
|
|
LINE 1: SELECT num_nonnulls();
|
|
^
|
|
HINT: No function matches the given name and argument types. You might need to add explicit type casts.
|
|
SELECT num_nulls();
|
|
ERROR: function num_nulls() does not exist
|
|
LINE 1: SELECT num_nulls();
|
|
^
|
|
HINT: No function matches the given name and argument types. You might need to add explicit type casts.
|