# 0580. Count Student Number in Departments

<https://leetcode.com/problems/count-student-number-in-departments>

## Description

A university uses 2 data tables, ***student*** and ***department***, to store data about its students and the departments associated with each major.

Write a query to print the respective department name and number of students majoring in each department for all departments in the ***department*** table (even ones with no current students).

Sort your results by descending number of students; if two or more departments have the same number of students, then sort those departments alphabetically by department name.

The ***student*** is described as follow:

```

| Column Name  | Type      |
|--------------|-----------|
| student\_id   | Integer   |
| student\_name | String    |
| gender       | Character |
| dept\_id      | Integer   |
```

where student\_id is the student's ID number, student\_name is the student's name, gender is their gender, and dept\_id is the department ID associated with their declared major.

And the ***department*** table is described as below:

```

| Column Name | Type    |
|-------------|---------|
| dept\_id     | Integer |
| dept\_name   | String  |
```

where dept\_id is the department's ID number and dept\_name is the department name.

Here is an example **input**:\
\&#xNAN;***student*** table:

```

| student\_id | student\_name | gender | dept\_id |
|------------|--------------|--------|---------|
| 1          | Jack         | M      | 1       |
| 2          | Jane         | F      | 1       |
| 3          | Mark         | M      | 2       |
```

***department*** table:

```

| dept\_id | dept\_name   |
|---------|-------------|
| 1       | Engineering |
| 2       | Science     |
| 3       | Law         |
```

The **Output** should be:

```

| dept\_name   | student\_number |
|-------------|----------------|
| Engineering | 2              |
| Science     | 1              |
| Law         | 0              |
```

## ac

```java
```
