Mostrar el nombre del departamento que tiene la mayor cantidad de empleados en SQL Server

En SQL, necesitamos encontrar la información del departamento de la tabla dada que contiene información sobre los empleados. Uno de esos datos es el nombre del departamento que tiene la mayor cantidad de empleados trabajando en él. Usaremos TOP , COUNT , ORDER BY , GROUP BY ,y cláusulas DESC para lograr esto. Esto se ilustra a continuación. Para este artículo, utilizaremos Microsoft SQL Server como nuestra base de datos.

Paso 1: crear una base de datos. Para esto, use el siguiente comando para crear una base de datos llamada GeeksForGeeks.

Consulta:

CREATE DATABASE GeeksForGeeks

Producción:

Paso 2: use la base de datos GeeksForGeeks. Para esto, use el siguiente comando.

Consulta:

USE GeeksForGeeks

Producción:

Paso 3: Crear una tabla EMPRESA dentro de la base de datos GeeksForGeeks. Esta tabla tiene 4 columnas, a saber, EMPLOYEE_ID, EMPLOYEE_NAME, DEPARTMENT_NAME y SALARY que contienen la identificación, el nombre, el departamento y el salario de varios empleados.

Consulta:

CREATE TABLE COMPANY(
EMPLOYEE_ID INT PRIMARY KEY,
EMPLOYEE_NAME VARCHAR(10),
DEPARTMENT_NAME VARCHAR(10),
SALARY INT);

Producción:

Paso 4: Describa la estructura de la tabla EMPRESA.

Consulta:

EXEC SP_COLUMNS COMPANY;

Producción:

Paso 5: Inserte 5 filas en la tabla EMPRESA.

Consulta:

INSERT INTO COMPANY VALUES(1,'RAM','HR',10000);
INSERT INTO COMPANY VALUES(2,'AMRIT','MRKT',20000);
INSERT INTO COMPANY VALUES(3,'RAVI','HR',30000);
INSERT INTO COMPANY VALUES(4,'NITIN','MRKT',40000);
INSERT INTO COMPANY VALUES(5,'VARUN','IT',50000);

Producción:

Paso 6: Muestre todas las filas de la tabla EMPRESA.

Consulta:

SELECT * FROM COMPANY;

Producción:

Paso 7: Muestre el nombre del departamento que tiene el mayor número de empleados trabajando en él. Usaremos la función agregada CONTAR aquí para encontrar la cantidad de empleados que trabajan en cada departamento. Esto se logra aún más utilizando la cláusula GROUP BY para contar el número por departamento. Luego, todas las frecuencias obtenidas se clasifican en orden decreciente usando ORDER BY y DESC se usa para especificar el orden descendente. Luego, la fila superior se selecciona usando la cláusula TOP seguida de 1. 1 aquí indica que la consulta devuelve solo 1 fila. También nombramos la nueva columna de la mayor cantidad de empleados como MAX_NO_OF_EMPLOYEES usando el AScláusula que crea una especie de alias.

Sintaxis:

SELECT TOP 1 COLUMN1, COUNT(*) AS ALIAS
FROM TABLE_NAME
GROUP BY COLUMN1
ORDER BY COUNT(*) DESC;

Consulta:

SELECT TOP 1 DEPARTMENT_NAME, COUNT(*) AS MAX_NO_OF_EMPLOYEES
FROM COMPANY
GROUP BY DEPARTMENT_NAME
ORDER BY COUNT(*) DESC;

Nota: esta consulta devuelve solo 1 fila, es decir, la fila superior entre las filas ordenadas devueltas.

Producción:

Publicación traducida automáticamente

Artículo escrito por abhisri459 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *