zoukankan      html  css  js  c++  java
  • OCP-1Z0-051-V9.02-108题

    108. Which two statements are true regarding the COUNT function? (Choose two.)

    A. The  COUNT function can be used only for CHAR, VARCHAR2,  and NUMBER data types.

    B. COUNT(*) returns the number of rows including duplicate rows and rows containing NULL  value in

    any of the columns.

    C. COUNT(cust_id) returns the number of rows including rows with duplicate customer IDs and NULL

    value in the CUST_ID column.

    D. COUNT(DISTINCT inv_amt)returns the number of rows excluding排除在外 rows containing duplicates and

    NULL values in the INV_AMT column.

    E. A SELECT statement using the  COUNT function with a  DISTINCT keyword   cannot have a

    WHERE clause.

    Answer: BD
     
    答案解析:
    COUNT函数有以下三种格式:
    • COUNT(*)
    • COUNT(expr)
    • COUNT(DISTINCT expr)
    COUNT(*)用于返回表中符合SELECT语句标准的行数,包括重复行和在任何列中含有空值的行。
    如果SELECT语句中包含WHERE子句,则COUNT(*)会返回符合WHERE子句中条件的行数。
    相反,COUNT(expr)返回由expr标识的列中非空值的数量。
    COUNT(DISTINCT expr)返回由expr标识的列中不同非空值的数量。

     
    测试实验如下表:有两组一样的row,
    scott@TEST0924> select * from test;
     
         EMPNO ENAME      JOB              MGR HIREDATE         SAL       COMM     DEPTNO
    ----------     ----------      ---------        ----------      --------           - ---------- ---------- ----------
          7369 SMITH      CLERK           7902 17-DEC-80               800                        20
          7499 ALLEN      SALESMAN        7698 20-FEB-81          1600        300         30
          7521 WARD       SALESMAN        7698 22-FEB-81         1250        500         30
          7566 JONES      MANAGER         7839 02-APR-81         2975                         20
          7654 MARTIN     SALESMAN        7698 28-SEP-81       1250       1400         30
          7566 JONES      MANAGER         7839 02-APR-81         2975                         20
          7654 MARTIN     SALESMAN        7698 28-SEP-81       1250       1400         30
     
    7 rows selected.
     
    count(*)时,返回所有的行数,包括重复的,以及有空值的
     
    scott@TEST0924> select count(*) from test;
     
      COUNT(*)
    ----------
             7
    count(distinct comm) ,首先去掉重复的和空值的,然后总计行
    scott@TEST0924> select count(distinct comm) from test;
     
    COUNT(DISTINCTCOMM)
    -------------------
                      3
     
     

    COUNT returns the number of rows returned by the query. You can use it as an aggregate or analytic function.你可以用它作为一个聚合函数或解析函数

    If you specify DISTINCT, then you can specify only the query_partition_clause of theanalytic_clause. Theorder_by_clause and windowing_clause are not allowed.

    If you specify expr, then COUNT returns the number of rows whereexpr is not null. You can count either all rows, or only distinct values ofexpr.

    If you specify the asterisk (*), then this function returns all rows, including duplicates and nulls. COUNT never returns null.

  • 相关阅读:
    SpringBoot配置文件(2)
    SpringBoot配置文件(1)
    java8新特性之stream流
    java8新特性之Lambda表达式
    zoj 1709 Oil Deposits
    zoj 2110 Tempter of the Bone
    poj 2823 Sliding Window
    fzu 1894 志愿者选拔
    hdoj 1754 I Hate It
    poj2404中国邮递员
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13317182.html
Copyright © 2011-2022 走看看