logo

DISTINTO DE CUENTA SQL

Antes de comprender el concepto de función Count con la palabra clave DISTINCT, debemos conocer las palabras clave Count y Distinct. Entonces, comencemos con la función Contar.

¿Qué es el recuento en SQL?

CONTAR es una función en el lenguaje de consulta estructurado que muestra el número de registros de la tabla en el resultado. En SQL, siempre se usa en la consulta SELECT.

La sintaxis de la función Count se proporciona a continuación:

 SELECT COUNT(Name_of_Column) FROM Name_of_Table; 

En el ejemplo de conteo, tenemos que definir el nombre de la columna entre paréntesis justo después de la palabra clave COUNT.

Ejemplo de función de conteo

En primer lugar, tenemos que crear una nueva tabla en la que se ejecutará la función de recuento.

java núcleo java

La siguiente consulta crea el Detalles_del_profesor mesa con ID_profesor como clave principal usando la declaración CREATE TABLE:

 CREATE TABLE Teacher_Details ( Teacher_ID INT NOT NULL, Teacher_Name varchar(100), Teacher_Qualification varchar(50), Teacher_Age INT, Teacher_Interview_Marks INT ); 

Las siguientes consultas SQL insertan el registro de nuevos profesores en la tabla anterior usando la instrucción INSERT INTO:

 INSERT INTO Teacher_Details VALUES (101, Anuj, B.tech, 20, 88); INSERT INTO Teacher_Details VALUES (102, Raman, MCA, 24, NULL); INSERT INTO Teacher_Details VALUES (104, Shyam, BBA, 19, 92); INSERT INTO Teacher_Details VALUES (107, Vikash, B.tech, 20, NULL); INSERT INTO Teacher_Details VALUES (111, Monu, MBA, 21, NULL); INSERT INTO Teacher_Details VALUES (114, Jones, B.tech, 18, 93); INSERT INTO Teacher_Details VALUES (121, Parul, BCA, 20, 97); INSERT INTO Teacher_Details VALUES (123, Divya, B.tech, 21, NULL); INSERT INTO Teacher_Details VALUES (128, Hemant, MBA, 23, 90); INSERT INTO Teacher_Details VALUES (130, Nidhi, BBA, 20, 88); INSERT INTO Teacher_Details VALUES (132, Priya, MBA, 22, NULL); INSERT INTO Teacher_Details VALUES (138, Mohit, MCA, 21, 92); 

Veamos el registro de la tabla anterior usando la siguiente instrucción SELECT:

 SELECT * FROM Teacher_Details; 

ID_profesor Nombre del maestro Calificación_del_profesor Edad_profesor Marcas_de_la_entrevista_del_profesor
101 anuj B.tech 20 88
102 raman MCA 24 NULO
104 sham BBA 19 92
107 vikash B.tech 20 NULO
111 monú MBA 21 NULO
114 jones B.tech 18 93
121 El pelo ACB 20 97
123 divya B.tech 21 NULO
128 Hemante MBA 23 90
130 nidhi BBA 20 88
132 Priya MBA 22 NULO
138 mohit MCA 21 92

La siguiente consulta cuenta los valores totales de la columna Teacher_Age de la tabla Teacher_Details:

 SELECT COUNT (Teacher_Age) AS Total_Teachers_Age_Column FROM Teacher_Details; 

Producción:

DISTINTO DE CUENTA SQL

El resultado de la consulta SELECT anterior es doce porque el Edad_profesor El campo no contiene ningún valor NULL.

La siguiente consulta cuenta los valores totales de Teacher_Interview_Column de la tabla anterior:

 SELECT COUNT (Teacher_Interview_Marks) AS Total_Teachers_Interview_Marks FROM Teacher_Details; 

Esta consulta mostrará el siguiente resultado en la pantalla:

DISTINTO DE CUENTA SQL

El resultado de la consulta SELECT anterior es 7 porque dos cinco celdas de la columna Teacher_Interview_Marks contienen NULL. Y estos cinco valores NULL están excluidos. Es por eso que la consulta SELECT muestra 7 en lugar de 12 en el resultado.

visualizador java

¿Qué es la función Count (*)?

Esto también es similar a la función Contar, pero la única diferencia es que también muestra el número de valores NULL de la tabla.

La sintaxis de la función Count (*) se proporciona aquí:

 SELECT COUNT(*) FROM Name_of_Table; 

Ejemplo:

Tomemos los Teacher_Details anteriores:

ID_profesor Nombre del maestro Calificación_del_profesor Edad_profesor Marcas_de_la_entrevista_del_profesor
101 anuj B.tech 20 88
102 raman MCA 24 NULO
104 sham BBA 19 92
107 vikash B.tech 20 NULO
111 monú MBA 21 NULO
114 jones B.tech 18 93
121 El pelo ACB 20 97
123 divya B.tech 21 NULO
128 Hemante MBA 23 90
130 nidhi BBA 20 88
132 Priya MBA 22 NULO
138 mohit MCA 21 92

La siguiente consulta cuenta los valores totales de la Total_entrevista_notas columna de la tabla anterior:

 SELECT COUNT (*) FROM Teacher_Details; 

La consulta SELECT con COUNT(*) anterior dará el siguiente resultado en la pantalla:

DISTINTO DE CUENTA SQL

¿Qué es DISTINTO en SQL?

La palabra clave DISTINCT muestra las filas únicas de la columna de la tabla en el resultado.

La sintaxis de la palabra clave DISTINCT se proporciona aquí:

 SELECT DISTINCT Name_of_Column FROM Table_Name WHERE [condition]; 

En la consulta DISTINCT, también podemos definir la condición en la cláusula WHERE para recuperar los valores específicos.

Ejemplo de DISTINTO

Primero, cree una nueva tabla en la que se ejecutará la palabra clave Distinct.

ángulo agudo

La siguiente consulta crea el Detalles de la bicicleta tabla usando la instrucción CREATE TABLE:

 CREATE TABLE Bike_Details ( Bike_Name varchar(100), Bike_Model INT, Bike_Color varchar(50), Bike_Cost INT ); 

Las siguientes consultas SQL insertan el registro de bicicletas nuevas en la tabla usando la instrucción INSERT INTO:

 INSERT INTO Bike_Details VALUES (KTM DUKE, 2019, Black, 185000); INSERT INTO Bike_Details VALUES (royal Infield, 2020, Black, 165000); INSERT INTO Bike_Details VALUES (Pulsar, 2018, Red, 90000); INSERT INTO Bike_Details VALUES (Apache, 2020, White, 85000); INSERT INTO Bike_Details VALUES (Livo, 2018, Black, 80000); INSERT INTO Bike_Details VALUES (KTM RC, 2020, Red, 195000); 

Los registros de la tabla anterior se muestran mediante la siguiente consulta SELECT:

 SELECT * FROM Bike_Details; 

Nombre_bicicleta Modelo_bicicleta Color_bicicleta Costo_bicicleta
DUQUE KTM 2019 Negro 185000
Real Enfield 2020 Negro 165000
Pulsar 2018 Rojo 90000
apache 2020 Blanco 85,000
Vivir 2018 Negro 80,000
ktm rc 2020 Rojo 195,000

Mesa: Detalles de la bicicleta

El siguiente SQL consulta los valores distintos de la columna Color de lo anterior Detalles de la bicicleta mesa:

 SELECT DISTINCT Bike_Color FROM Bikes ; 

Producción:

DISTINTO DE CUENTA SQL

Como podemos ver, Negro, Rojo y Blanco son tres valores distintos en la columna Bike_Color.

Función de conteo con palabra clave DISTINCT

La palabra clave DISTINCT con la función COUNT en la consulta SELECT muestra el número de datos únicos del campo de la tabla.

La sintaxis de la función Count con la palabra clave DISTINCT se proporciona a continuación:

 SELECT COUNT(DISTINCT (Column_Name) FROM table_name WHERE [condition]; 

Ejemplos de función de conteo con palabra clave DISTINCT

Los siguientes dos ejemplos de SQL explicarán la ejecución de la función Count con palabra clave distinta:

Ejemplo 1:

La siguiente consulta crea la tabla College_Students con cuatro campos:

fecha javascript
 CREATE TABLE College_Students ( Student_Id INT NOT NULL, Student_Name Varchar (40), Student_Age INT, Student_Marks INT ); 

La siguiente consulta INSERT inserta el registro de estudiantes en la tabla College_Students:

 INSERT INTO College_Students (Student_Id, Student_Name, Student_Age, Student_Marks) VALUES (101, Akhil, 28, 95), (102, Abhay, 27, 86), (103, Sorya, 26, 79), (104, Abhishek, 27, 66), (105, Ritik, 26, 79), (106, Yash, 29, 88); 

La siguiente consulta muestra los detalles de la tabla College_Students:

 SELECT * FROM College_Students; 

Identificación del Estudiante Nombre del estudiante Edad_estudiante Marcas_estudiantes
101 Akhil 28 95
102 Abhay 27 86
103 Sorya 26 79
104 Abhishek 27 66
105 Hrithik 26 79
106 yash 29 88

Tabla: Universidad_Estudiantes

La siguiente instrucción SQL cuenta los valores únicos de la columna Student_Age de la tabla College_Students:

 SELECT COUNT (DISTINCT (Student_Age) AS Unique_Age FROM College_Students ; 

Esta consulta proporcionará la siguiente tabla en el resultado:

DISTINTO DE CUENTA SQL

El resultado muestra los cuatro valores porque la columna Teacher_age contiene 4 valores únicos.

Ejemplo 2:

La siguiente consulta crea la tabla IT_Employee con cuatro campos:

 CREATE TABLE IT_Employee ( Employee_Id INT NOT NULL, Employee_Name Varchar (40), Emp_Age INT, Employee_Salary INT ); 

La siguiente consulta INSERT inserta el registro de empleados de TI en la tabla IT_Employee:

 INSERT INTO IT_Employee (Employee_Id, Employee_Name, Employee_Age, Employee_Salary) VALUES (101, Akhil, 28, 25000), (102, Abhay, 27, 26000), (103, Sorya, 26, 29000), (104, Abhishek, 27, 26000), (105, Ritik, 26, 29000), (106, Yash, 29, 25000); 

La siguiente consulta muestra los detalles de la tabla IT_Employee:

 SELECT * FROM IT_Employee; 

ID de empleado Nombre de empleado Edad_empleado Empleado_salario
101 Akhil 28 25000
102 Abhay 27 26000
103 Sorya 26 29000
104 Abhishek 27 26000
105 Hrithik 26 29000
106 yash 29 25000

Tabla: TI_Empleado

escáner siguiente

La siguiente declaración SQL cuenta solo los valores únicos de la columna Emp_Age de la tabla IT_Employee anterior:

 SELECT COUNT (DISTINCT (Employee_Age)) AS Unique_Age FROM IT_Employee ; 

Esta consulta dará el siguiente resultado:

DISTINTO DE CUENTA SQL