sql >> Database >  >> RDS >> Database

SQL SELECT AVG

In deze zelfstudie leren we met behulp van voorbeelden over het functieconcept van de functienaam avg() aggregatie in SQL.

De functie AVG() is een van de aggregatiefuncties in SQL. De AVG() functie geeft het gemiddelde weer van de waarden die in de uitdrukking worden genoemd. De functie AVG() is een numerieke functie. De functie AVG() staat slechts één parameter toe. De functie AVG() negeert NULL-waarden.

De syntaxis voor de functie SELECT AVG() is als volgt:

SELECT Column_Name_1, Column_Name_2, Column_Name_3, AVG(Column_Name) FROM Table_Name WHERE Expression;

Laten we de AVG()-functie begrijpen aan de hand van voorbeelden

Beschouw de reeds bestaande tabel, die de volgende gegevens heeft:

Tabelnaam:- D_Studenten

Student_Id Naam leerling First_Sem Second_Sem Third_Sem Vierde_Sem Fifth_Sem Sixth_Sem Totaal Department_Id
202111 Vaishnavi Patil 94 91 88 85 95 92 91 1
202112 Vaibhav Lokhande 85 90 92 80 85 82 86 2
202113 Yash Dhull 90 88 94 87 85 90 89 3
202114 Sonali Patole 95 90 92 88 92 90 91 4
202115 Axar Patel 85 80 82 86 92 84 85 1
202116 Meena Mishra 78 75 80 74 85 77 78 3
202117 Mahesh Kumbhar 75 80 75 78 80 76 77 5
202118 Sakshi Patil 80 78 74 78 80 77 78 2
202119 Sopan Bhore 70 68 75 75 80 80 75 2
202220 Prajwal Lokhande 80 85 85 75 78 80 81 4
202221 Anuja Wanare 85 88 86 82 84 85 85 5
202222 Venkatesh Iyer 90 89 87 90 92 91 90 3
202223 Anushka Sen 70 75 71 74 80 78 75 1
202224 Aakash Jain 80 75 72 74 85 80 78 4
202225 Akshay Agarwal 85 80 78 88 90 82 84 5
202226 Shwetali Bhagwat 90 80 85 88 90 80 86 1
202227 Mayuri Wagh 80 80 85 80 82 85 82 4
202228 Utkarsh Rokade 85 80 80 90 84 84 84 5

Voorbeeld 1: Voer een zoekopdracht uit om het gemiddelde te vinden van de kolom van het eerste semester van de leerling uit de tabel D_Stundets.

SELECT AVG(First_Sem) AS 'First Semester Average' FROM D_Students;

We hebben het kolomgemiddelde van het eerste semester van de student weergegeven in het bovenstaande SELECT AVG()-functiequeryvoorbeeld

De uitvoer van de bovenstaande vraag is als volgt:

Gemiddelde eerste semester
83.1667

Voorbeeld 2: Voer een zoekopdracht uit om het gemiddelde van de totale kolomgroep van de student te vinden op de afdelings-ID.

SELECT Department_Id, AVG(Total) AS 'Total Average' FROM D_Students GROUP BY Department_Id;

In het bovenstaande SELECT AVG()-functiequeryvoorbeeld hebben we de totale kolomgemiddelde groep van de student weergegeven per afdelings-ID.

De uitvoer van de bovenstaande vraag is:

Department_Id Totaal gemiddelde
1 84.2500
2 79.6667
3 85.6667
4 83.0000
5 82.5000

Voorbeeld 3:Voer een zoekopdracht uit om de kolomgroep van het eerste semester tot het zesde semester van de gemiddelde student te vinden op basis van de naam van de student.

SELECT Student_Id, Student_Name, AVG(First_Sem + Second_Sem +Third_Sem + Fourth_Sem + Fifth_Sem + Sixth_Sem)/6 AS 'OverAll Average' FROM D_Students GROUP BY Student_Name;

In het bovenstaande voorbeeld van de functiequery SELECT AVG() geven we de gemiddelde groep van het eerste semester tot het zesde semester van de student weer op de naam van de student. We hebben zes kolommen gebruikt als één parameter in de gemiddelde functie.

De uitvoer van de bovenstaande vraag is als volgt:

Student_Id Naam leerling Algemeen gemiddelde
202224 Aakash Jain 77.66666667
202225 Akshay Agarwal 83.83333333
202221 Anuja Wanare 85.00000000
202223 Anushka Sen 74.66666667
202115 Axar Patel 84.83333333
202117 Mahesh Kumbhar 77.33333333
202227 Mayuri Wagh 82.000.000
202116 Meena Mishra 78.16666667
202220 Prajwal Lokhande 80.50000000
202118 Sakshi Patil 77.83333333
202226 Shwetali Bhagwat 85.50000000
202114 Sonali Patole 91.16666667
202119 Sopan Bhore 74.66666667
202228 Utkarsh Rokade 83.83333333
202112 Vaibhav Lokhande 85.66666667
202111 Vaishnavi Patil 90.83333333
202222 Venkatesh Iyer 89.83333333
202113 Yash Dhull 89.00000000

Voorbeeld 4: Voer een zoekopdracht uit om het gemiddelde van de kolomgroep van het eerste semester tot het zesde semester van de student te vinden op basis van de naam van de student en het gemiddelde groter dan 75.

SELECT Student_Id, Student_Name, AVG(First_Sem + Second_Sem +Third_Sem + Fourth_Sem + Fifth_Sem + Sixth_Sem)/6 AS 'OverAll Average' FROM D_Students GROUP BY Student_Name HAVING AVG(First_Sem + Second_Sem +Third_Sem + Fourth_Sem + Fifth_Sem + Sixth_Sem)/6 > 75;

Selecteer in het bovenstaande AVG () voorbeeld van een functiequery, we geven de gemiddelde groep van het eerste semester tot het zesde semester van de student weer op de naam van de student, en het gemiddelde is groter dan 75. De HAVING-clausule wordt gebruikt in de zoekopdracht.

De uitvoer van de bovenstaande vraag is als volgt:

Student_Id Naam leerling Algemeen gemiddelde
202224 Aakash Jain 77.66666667
202225 Akshay Agarwal 83.83333333
202221 Anuja Wanare 85.00000000
202115 Axar Patel 84.83333333
202117 Mahesh Kumbhar 77.33333333
202227 Mayuri Wagh 82.000.000
202116 Meena Mishra 78.16666667
202220 Prajwal Lokhande 80.50000000
202118 Sakshi Patil 77.83333333
202226 Shwetali Bhagwat 85.50000000
202114 Sonali Patole 91.16666667
202228 Utkarsh Rokade 83.83333333
202112 Vaibhav Lokhande 85.66666667
202111 Vaishnavi Patil 90.83333333
202222 Venkatesh Iyer 89.83333333
202113 Yash Dhull 89.00000000


  1. het creëren van geparametriseerde views in oracle11g

  2. Hoe de bovenliggende tabel, referentietabel, naam van de externe sleutelbeperking en kolommen in SQL Server te krijgen - SQL Server / TSQL-zelfstudie, deel 71

  3. Hoe u uw waarde als DBA kunt verwoorden voor Finance Executives

  4. Is er een prestatieverschil tussen CTE, subquery, tijdelijke tabel of tabelvariabele?