To answer this question, let's go through each option to understand why it is correct or incorrect:
Option A) You can use aggregate functions in any clause of a SELECT statement. - This option is incorrect because aggregate functions can only be used in the SELECT clause and in the HAVING clause of a SELECT statement.
Option B) You can use aggregate functions only in the column list of the SELECT clause and in the WHERE clause of a SELECT statement. - This option is incorrect because aggregate functions can also be used in the HAVING clause of a SELECT statement.
Option C) You can mix single row columns with aggregate functions in the column list of a SELECT statement by grouping on the single row columns. - This option is correct. When using aggregate functions, you can include both single row columns and aggregate functions in the column list of a SELECT statement by grouping on the single row columns.
Option D) You can pass column names, expressions, constants, or functions as parameters to an aggregate function. - This option is correct. Aggregate functions can take column names, expressions, constants, or functions as parameters.
Option E) You can use aggregate functions on a table, only by grouping the whole table as one single group. - This option is incorrect. Aggregate functions can be used on a table by grouping the data based on specific columns, not necessarily the whole table as one group.
Option F) You cannot group the rows of a table by more than one column while using aggregate functions. - This option is incorrect. You can group the rows of a table by more than one column while using aggregate functions. This allows for more specific aggregation based on multiple criteria.
The correct answers are Option C and Option D.