- Tablo içerisinde herhangi bir sayma işlemi gerçekleştirmek için COUNT fonksiyonu kullanılmaktadır.
Söz dizimi: SELECT COUNT(<sütun adı>) FROM <tablo
adı>
1-) COUNT(*) KULLANIMI
- COUNT fonksiyonu (*) ile kullanıldığında FROM ile belirtilen tablodaki toplam satır sayısını verir.
Örnek: Aşağıdaki örnekte
Çalışanlar (Employees) tablosundaki kayıt sayısı listelenmiştir.
Sorgu: SELECT COUNT(*) AS [Kayıt Sayısı] FROM Employees
Not: AS Kullanımını bir sonraki dersimizde anlatacağım(Ders-16). Bilmeniz gereken AS ile Temp(geçici) sütun oluşturup adı 'Kayıt Sayısı' olsun diyoruz. AS kullanmadığımız takdirde sorgumuzu yaptığımızda sütun ismimiz 'No Column Name' olarak görünür.
Örnek: İkinci örneğimizde kriterleri arttıralım.Mesela Şehri('City') Londra olan çalışanlarımızın sayısını bilmek isteyelim.Bu durumda sorgumuz aşağıdaki gibidir.
Sorgu: SELECT COUNT(*) AS [Kayıt Sayısı] FROM Employees WHERE City='London'
2-) COUNT DISTINCT
- DISTINCT anahtar kelimesi COUNT ile birlikte kullanıldığında, belirtilen sütundaki benzersiz kayıtların sayısını verir.
Söz dizimi: SELECT
COUNT(DISTINCT <sütun adı> FROM <tablo adı>
Örnek: Bu örneğimizde kaç farklı müşteriden sipariş aldığımızı bulacağımız sorgumuzu yazalım.
Sorgu: SELECT COUNT (DISTINCT CustomerID)FROM Orders
3-) COUNT (<Sütun Adı>)
- COUNT fonksiyonu bir sütun adı ile birlikte kullanıldığında, o sütundaki boş (NULL) olmayan kayıtların sayısını verir.
Sorgu: SELECT COUNT (ShipRegion) AS [SevkBölgesi] FROM Orders
Ders 16'ya geçebilirsiniz.
Hocam emeğinize sağlık çok güzel olmuş anladım fakat bazı şeyler oturmadı sanki mesela şehirdeki herkesi aratıyoruz ama belirli kişileri aratalım yani şöyle söyleyim daha rahat ifade ediyim kendimi bir okul var öğrenci tablosu var öğrenciler sınava girmiş olsun bende sadece sınava giren kişileri listeletmek istesem daha da açıkçası şöyle bir sorgu cümlem olsun
YanıtlaSilHer dersten kaç öğrencinin sınava girdiğini listeleyiniz.
hani dersler listelenecek derse göre öğrenciler listelenecek ve sadece sınava giren öğrenciler listelenecek
Merhabalar,
SilBiraz geç dönüyorum kusura bakmayın.
İstediğinizi şu şekilde cevaplayabilirim. İşçi tablosunda city bazlı gruplarsak yani sizde sınava giren öğrencileri ders bazlı gruplamak gibi.
SELECT City,count(*) AS EmployeesCount FROM Employees GROUP BY city
bu şekilde her şehirden kaç çalışan olduğunu alabiliriz.
sizde;
SELECT SinavAdi,count(*) AS SinavaGirenSayisi FROM Sinavlar GROUP BY SinavAdi
şeklinde kullanabilirsiniz.