w3resource

SQL Exercises: View to count many customers at each lavel of grade


4. From the following table, create a view that counts the number of customers in each grade.

Sample table: Customer

 customer_id |   cust_name    |    city    | grade | salesman_id 
-------------+----------------+------------+-------+-------------
        3002 | Nick Rimando   | New York   |   100 |        5001
        3007 | Brad Davis     | New York   |   200 |        5001
        3005 | Graham Zusi    | California |   200 |        5002
        3008 | Julian Green   | London     |   300 |        5002
        3004 | Fabian Johnson | Paris      |   300 |        5006
        3009 | Geoff Cameron  | Berlin     |   100 |        5003
        3003 | Jozy Altidor   | Moscow     |   200 |        5007
        3001 | Brad Guzan     | London     |       |        5005

Sample Solution:

-- Creating a VIEW named 'gradecount' with columns 'grade' and 'number'
CREATE VIEW gradecount (grade, number)

-- Selecting columns 'grade' and the count of rows as 'number' from the 'customer' table
-- Grouping the result by the 'grade' column
AS SELECT grade, COUNT(*)
FROM customer
GROUP BY grade;

output:

sqlpractice=# SELECT *
sqlpractice-# FROM gradecount
sqlpractice-# WHERE number = 2;
 grade | number
-------+--------
       |      2
   200 |      2
   300 |      2
(3 rows)

Code Explanation:

The SQL statement creates a view called "gradecount" that shows the count of customers for each grade.
The specified two columns in the view are "grade" and "number".
It selects the "grade" column and the count of rows for each grade from the "customer" table and groups the results by grade.

Go to:


PREV : View to find the salesmen of the city New York.
NEXT : View to keep track the number of customers ordering.

Inventory database model:

Inventory database model.


What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.