45 lines
794 B
SQL
45 lines
794 B
SQL
# name: test/sql/aggregate/aggregates/test_count.test
|
|
# description: Test COUNT operator
|
|
# group: [aggregates]
|
|
|
|
statement ok
|
|
PRAGMA enable_verification
|
|
|
|
# test counts on scalar values
|
|
query IIIII
|
|
SELECT COUNT(*), COUNT(1), COUNT(100), COUNT(NULL), COUNT(DISTINCT 1)
|
|
----
|
|
1
|
|
1
|
|
1
|
|
0
|
|
1
|
|
|
|
# test counts on a set of values
|
|
statement ok
|
|
CREATE TABLE integers(i INTEGER);
|
|
|
|
statement ok
|
|
INSERT INTO integers VALUES (1), (2), (NULL)
|
|
|
|
query IIIIII
|
|
SELECT COUNT(*), COUNT(1), COUNT(i), COUNT(COALESCE(i, 1)), COUNT(DISTINCT i), COUNT(DISTINCT 1) FROM integers
|
|
----
|
|
3
|
|
3
|
|
2
|
|
3
|
|
2
|
|
1
|
|
|
|
# ordered aggregates are not supported
|
|
query I
|
|
SELECT COUNT(1 ORDER BY 1)
|
|
----
|
|
1
|
|
|
|
# cannot do DISTINCT *
|
|
statement error
|
|
SELECT COUNT(DISTINCT *) FROM integers
|
|
----
|
|
Binder Error: STAR expression is only allowed as the root element |