Count department and calculate average salary : COUNT « Aggregate Functions « Oracle PL / SQL






Count department and calculate average salary

  
SQL> create table emp
  2  ( empno      NUMBER(4)    constraint E_PK primary key
  3  , ename      VARCHAR2(8)
  4  , init       VARCHAR2(5)
  5  , job        VARCHAR2(8)
  6  , mgr        NUMBER(4)
  7  , bdate      DATE
  8  , sal        NUMBER(6,2)
  9  , comm       NUMBER(6,2)
 10  , deptno     NUMBER(2)    default 10
 11  ) ;

Table created.

SQL> insert into emp values(1,'Tom','N',   'Coder', 13,date '1965-12-17',  800 , NULL,  20);

1 row created.

SQL> insert into emp values(2,'Jack','JAM', 'Tester',6,date '1961-02-20',  1600, 300,   30);

1 row created.

SQL> insert into emp values(3,'Wil','TF' ,  'Tester',6,date '1962-02-22',  1250, 500,   30);

1 row created.

SQL> insert into emp values(4,'Jane','JM',  'Designer', 9,date '1967-04-02',  2975, NULL,  20);

1 row created.

SQL> insert into emp values(5,'Mary','P',  'Tester',6,date '1956-09-28',  1250, 1400,  30);

1 row created.

SQL> insert into emp values(6,'Black','R',   'Designer', 9,date '1963-11-01',  2850, NULL,  30);

1 row created.

SQL> insert into emp values(7,'Chris','AB',  'Designer', 9,date '1965-06-09',  2450, NULL,  10);

1 row created.

SQL> insert into emp values(8,'Smart','SCJ', 'Coder', 4,date '1959-11-26',  3000, NULL,  20);

1 row created.

SQL> insert into emp values(9,'Peter','CC',   'Designer',NULL,date '1952-11-17',  5000, NULL,  10);

1 row created.

SQL> insert into emp values(10,'Take','JJ', 'Tester',6,date '1968-09-28',  1500, 0,     30);

1 row created.

SQL> insert into emp values(11,'Ana','AA',  'Coder', 8,date '1966-12-30',  1100, NULL,  20);

1 row created.

SQL> insert into emp values(12,'Jane','R',   'Manager',   6,date '1969-12-03',  800 , NULL,  30);

1 row created.

SQL> insert into emp values(13,'Fake','MG',   'Coder', 4,date '1959-02-13',  3000, NULL,  20);

1 row created.

SQL> insert into emp values(14,'Mike','TJA','Manager',   7,date '1962-01-23',  1300, NULL,  10);

1 row created.

SQL>
SQL> select count(deptno), count(distinct deptno)
  2  ,      avg(comm),     avg(nvl(comm,0))
  3  from   emp;

COUNT(DEPTNO) COUNT(DISTINCTDEPTNO)  AVG(COMM) AVG(NVL(COMM,0))
------------- --------------------- ---------- ----------------
           14                     3        550       157.142857

SQL>
SQL>
SQL> drop table emp;

Table dropped.

SQL>

   
    
  








Related examples in the same category

1.COUNT(column) and COUNT(*): count the number of rows passed into the function.
2.Syntax: COUNT([DISTINCT]|[ALL] )
3.Using GROUP BY would tell us how many cars from each vendor we have on the lot:
4.Find out which maker has a null value car with count()
5.-Using the COUNT function in Having clause
6.Example using the COUNT function with group by clause
7.Count with group by: count for a group value
8.Get the number of rows in each city group using the COUNT() function
9.count null
10.Column alias name for count function
11.Count(*) - count(column_Name)
12.count distinct column value
13.count(1)
14.count(distinct state)
15.Count(*) and column renaming
16.Count() with where clause
17.Count date field value, and calculation
18.Count employee in a department after grouping by department id
19.Count employee, group by department id and job title
20.count(*) - count(onhand)
21.count(*) vs count(column name)