En SQL, a veces necesitamos encontrar el valor promedio de una columna en función de otra columna de la tabla, como encontrar las calificaciones promedio de los estudiantes en todas las materias. Esto implica el uso de la cláusula GROUP BY junto con la función AGGREGATE como AVG . Lo mismo se muestra en el siguiente artículo. 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: Cree una tabla de STDMARKS dentro de la base de datos GeeksForGeeks. Esta tabla tiene 4 columnas, a saber, ROLL_NO, STUDENT_NAME, SUBJECT y MARKS que contienen el número de lista y el nombre de los estudiantes y el nombre de la materia y las calificaciones obtenidas por el estudiante en la materia respectiva.
Consulta:
CREATE TABLE STDMARKS( ROLL_NO INT, STUDENT_NAME VARCHAR(10), SUBJECT VARCHAR(10), MARKS INT);
Producción:
Paso 4: Describa la estructura de la tabla STDMARKS.
Consulta:
EXEC SP_COLUMNS STDMARKS;
Producción:
Paso 5: inserte 16 filas en la tabla STDMARKS.
Consulta:
INSERT INTO STDMARKS VALUES(1,'RAVI','C++',75); INSERT INTO STDMARKS VALUES(1,'RAVI','ORACLE',84); INSERT INTO STDMARKS VALUES(1,'RAVI','JAVA',95); INSERT INTO STDMARKS VALUES(1,'RAVI','OS',62); INSERT INTO STDMARKS VALUES(2,'VIVEK','C++',46); INSERT INTO STDMARKS VALUES(2,'VIVEK','ORACLE',70); INSERT INTO STDMARKS VALUES(2,'VIVEK','JAVA',55); INSERT INTO STDMARKS VALUES(2,'VIVEK','OS',56); INSERT INTO STDMARKS VALUES(3,'RAJ','C++',82); INSERT INTO STDMARKS VALUES(3,'RAJ','ORACLE',84); INSERT INTO STDMARKS VALUES(3,'RAJ','JAVA',74); INSERT INTO STDMARKS VALUES(3,'RAJ','OS',92); INSERT INTO STDMARKS VALUES(4,'MAHESH','C++',43); INSERT INTO STDMARKS VALUES(4,'MAHESH','ORACLE',49); INSERT INTO STDMARKS VALUES(4,'MAHESH','JAVA',68); INSERT INTO STDMARKS VALUES(4,'MAHESH','OS',35);
Producción:
Paso 6: Muestre todas las filas de la tabla STDMARKS.
Consulta:
SELECT * FROM STDMARKS;
Producción:
Paso 7: Muestre el ROLL_NO del estudiante y las calificaciones promedio obtenidas por ese estudiante en todas las materias de la tabla STDMARKS . Para lograr el valor agregado de una columna de acuerdo con otra columna, necesitamos usar la cláusula GROUP BY junto con la función agregada como AVG . La columna mencionada después de la cláusula GROUP BY es la base de nuestra salida. Las calificaciones promedio de los estudiantes se logran de esta manera.
Sintaxis:
SELECT COLUMN_NAME1,AVG(COLUMN_NAME2) AS ALIAS FROM TABLE_NAME GROUP BY COLUMN_NAME1;
Consulta:
SELECT ROLL_NO,AVG(MARKS) AS "AVERAGE MARKS" FROM STDMARKS GROUP BY ROLL_NO;
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