logo

SQL COUNT WHERE

SQL Count()-funktiota voidaan käyttää myös WHERE-lauseen kanssa SELECT-käskyssä.

Count() ja WHERE-lause palauttaa vain ne taulukon rivit, jotka vastaavat WHERE-lauseessa määritettyä ehtoa.

SQL-funktion syntaksi Count() WHERE-lauseen kanssa

 SELECT COUNT(Column_Name) FROM Table_Name WHERE [Condition]; 

Esimerkkejä SQL Count -funktiosta, jossa on WHERE-lause

Esimerkki 1: Luo ensin taulukko ja suorita sitten laskentatoiminto.

Seuraava CREATE TABLE -käsky luo Cars_Details-taulukon, jossa on viisi kenttää:

 CREATE TABLE Cars_Details ( Car_Number INT PRIMARY KEY, Car_Model INT, Car_Name VARCHAR (50), Car_Price INT NOT NULL, Car_AmountINT NOT NULL ) ; 

Seuraava INSERT-kysely lisää autojen tietueen Cars_Details-taulukkoon:

 INSERT INTO Cars_Details (Car_Number, Car_Model, Car_Name, Car_Amount, Car_Price) VALUES (2578, 2018, Creta, 3, 1500000), (9258, 2019, Audi, 2, 3000000), (8233, 2018, Venue, 6, 900000), (8990, 2018, Nexon, 7, 700000), (7085, 2020, Mercedes, 6, 8000000), (1258, 2021, Thar, 2, 1500000), (2564, 2019, Jaguar, 4, 6000000), (9578, 2020, Scorpio, 8, 1800000); 

Seuraava SELECT-kysely näyttää tiedot kohteesta Cars_Details pöytä:

 SELECT * FROM Cars_Details; 

Auton_numero Auton_nimi Auton_määrä Auto_hinta
2578 Kreeta 3 900 000
9258 Audi 2 1100000
8233 Paikka 6 900 000
8990 Nexon 7 700 000
7085 Mercedes 6 8000000
1258 Uusi 2 1500000
2564 Jaguar 4 6000000
9578 Skorpioni 8 1800000

Seuraava kysely näyttää niiden autojen kokonaisarvon, joiden Auton_numero on suurempi ja yhtä suuri kuin 7000:

 SELECT COUNT(Car_Name) As 'Number_of_Cars'FROM Cars_Details WHERE Car_Number >= 7000; 

Lähtö:

SQL COUNT WHERE

Esimerkki 2: Seuraava kysely luo College_Student_Details taulukko käyttäen CREATE TABLE -käskyä:

 CREATE TABLE College_Student_Details ( Student_ID INT NOT NULL, Student_Name varchar(100), Student_Course varchar(50), Student_Age INT, Student_Marks INT ); 

Seuraavat SQL-kyselyt lisäävät opiskelijoiden tietueen yllä olevaan taulukkoon käyttämällä INSERT INTO -käskyä:

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

Katsotaan yllä olevan taulukon tietue käyttämällä seuraavaa SELECT-käskyä:

 SELECT * FROM College_Student_Details; 

Opiskelijanumero Opiskelijan nimi Opiskelija_kurssi Opiskelija-ikä Student_Marks
101 Anuj B.tech kaksikymmentä 88
102 Raman MCA 24 98
104 Shyam BBA 19 92
107 Vikash B.tech kaksikymmentä 78
111 Monu MBA kaksikymmentäyksi 65
114 Jones B.tech 18 93
121 Hiukset BCA kaksikymmentä 97
123 Divya B.tech kaksikymmentäyksi 89
128 Hemant MBA 23 90
130 Nidhi BBA kaksikymmentä 88
132 Priya MBA 22 99
138 Mohit MCA kaksikymmentäyksi 92

Seuraava Count-kysely näyttää niiden opiskelijoiden kokonaismäärän, joiden Student_Marks on suurempi kuin 90:

 SELECT COUNT(*) As 'Number_of_Students'FROM Collge_Student_Details WHERE Student_Marks > 90; 

Lähtö:

SQL COUNT WHERE