Using count, min/max, and group-by
In this recipe, we will see how to count rows, compute min/max aggregates, and use filters in group-by queries.
How to do it...
The following steps will demonstrate the use of count, min/max, and group-by:
Connect to the
SH
schema:CONNECT sh@TESTDB/sh
Show the execution plan for a
MIN/MAX
query:SET AUTOT TRACE EXP SELECT MAX(CUST_CREDIT_LIMIT) FROM CUSTOMERS; SELECT MIN(CUST_CREDIT_LIMIT) FROM CUSTOMERS;
Show the execution plan for a query which returns the
MIN
and theMAX
:SELECT MAX(CUST_CREDIT_LIMIT), MIN(CUST_CREDIT_LIMIT) FROM CUSTOMERS;
Create an index on
CUSTOMERS
in the column in which we need to aggregate:CREATE INDEX IX_CUST_CREDIT_LIMIT ON CUSTOMERS (CUST_CREDIT_LIMIT);
Execute the query in step 2:
SET AUTOT TRACE EXP STAT SELECT MAX(CUST_CREDIT_LIMIT) FROM CUSTOMERS; SELECT MIN(CUST_CREDIT_LIMIT) FROM CUSTOMERS;
Execute the query in step 3:
SELECT MAX(CUST_CREDIT_LIMIT), MIN(CUST_CREDIT_LIMIT) FROM CUSTOMERS;
Use different ways to count the...