Kurs
Satırları veya değerleri saymak, veri analizinin önemli bir parçasıdır; bu nedenle SQL'in buna yardımcı olacak kendi işlevine sahip olması şaşırtıcı değildir. İster yinelemeleri belirleyin, ister grup toplamlarını hesaplayın ya da verileri filtreleyin, COUNT() işlevi yanınızdadır.
Bu yazıda, temel sözdiziminden GROUP BY ve HAVING ile daha ilginç kullanım örneklerine kadar COUNT() işlevinin ne kadar faydalı olduğunu göstereceğim. Ayrıca, hem öğrenmek hem de özgeçmişinize katkı sağlamak için harika bir seçenek olan SQL Associate Certification programımıza kaydolmayı da düşünebilirsiniz.
SQL'de COUNT() Fonksiyonu Nedir?
COUNT() işlevi, bir kritere uyan satırların sayısını döndürür.
SQL COUNT() Sözdizimi
COUNT() işlevinin temel sözdizimi aşağıdaki gibidir.
SELECT COUNT(column_name)
FROM table_name;
Sözdiziminin farklı türleri farklı amaçlara hizmet eder.
-
COUNT(*)sözdizimi, bir tablodaki satır sayısını saymamıza olanak tanır -
COUNT(DISTINCT column)sözdizimi, bir sütundaki farklı değerlerin sayısını saymamıza olanak tanır -
COUNT(CASE WHEN condition THEN column END)sözdizimi, koşulları sağlayan değerlerin sayısını saymamıza olanak tanır.
GROUP BY ile birlikte kullanılan COUNT(), her gruba ait satır sayısını bulmak için kullanışlıdır.
HAVING ile birlikte kullanılan COUNT(), grupları sahip oldukları satır sayısına göre filtrelemek için kullanışlıdır.
Bunları aşağıdaki örneklerle göstereceğiz.
SQL COUNT() Fonksiyonu Örnekleri
Bu eğitimdeki kodu çevrimiçi olarak çalıştırın ve düzenleyin
Kodu çalıştırCOUNT(*) ile satır sayısını hesaplama
products adlı tablo, bir şirketin sattığı tüm ürünleri içerir. COUNT(*) ifadesi, tablodaki satır sayısını hesaplamamıza olanak tanır.
SELECT
COUNT(*) AS number_of_rows
FROM products
|
|
|
321 |
COUNT(DISTINCT …) ile benzersiz değerleri sayma
COUNT(DISTINCT column) sözdizimi, bir sütundaki benzersiz değerlerin sayısını saymamıza olanak tanır.
Örneğin, products tablosunda her ürünün ilişkili bir markası vardır. Tablodaki benzersiz ürün ve marka sayısını hesaplayabiliriz.
SELECT
COUNT(DISTINCT product_id) AS unique_product_count,
COUNT(DISTINCT brand_id) AS unique_brand_count
FROM products
|
|
|
|
321 |
9 |
COUNT() ve CASE WHEN ile koşulu sağlayan satırları sayma
COUNT(CASE WHEN condition THEN column END) sözdizimi, bir koşulu karşılayan satırların sayısını hesaplamamıza olanak tanır.
Örneğin, products tablosunda her ürünün bir list_price değeri vardır. Kaç ürünün “expensive” (liste fiyatı 500 $’dan fazla olan) olduğunu veya olmadığını hesaplayabiliriz.
SELECT
COUNT(CASE WHEN list_price >= 500 THEN product_id END) AS expensive_product_count,
COUNT(CASE WHEN list_price < 500 THEN product_id END) AS cheap_product_count
FROM products
|
|
|
|
213 |
108 |
COUNT() ve GROUP BY ile gruplardaki satırları sayma
COUNT(), her gruptaki satır sayısını bulmak için GROUP BY ile birlikte kullanılabilir.
Örneğin, ürün tablosunda 2016’dan 2019’a kadar bisiklet modelleri bulunmaktadır. Bisikletlerin dağılımını bulmak için, her yıldaki ürün sayısını hesaplamak üzere COUNT(product_id) ve GROUP BY model_year kullanabiliriz.
SELECT
model_year,
COUNT(product_id) AS product_count
FROM products
GROUP BY model_year
|
|
|
|
2016 |
26 |
|
2017 |
85 |
|
2018 |
204 |
|
2019 |
6 |
GROUP BY ve HAVING ile COUNT() kullanarak grupları filtreleme
4. örnekte, COUNT()’un GROUP BY ile kullanılabildiğini gördük. Bir gruptaki satır sayısını kullanarak grupları filtrelemek için HAVING ifadesini kullanabiliriz.
Örneğin, 50’den az ürüne sahip yılların sayısını bulmak için aşağıdaki sözdizimini kullanabiliriz.
SELECT
model_year
FROM products
GROUP BY model_year
HAVING COUNT(product_id) < 50
|
|
|
2016 |
|
2019 |
Teknik Gereksinimler
COUNT(), modern SQL’in tüm sürümlerinde bulunan bir işlevdir. DataCamp, seçtiğiniz veritabanı sistemi bağlamında SQL’e hâkim olmanıza yardımcı olacak özel kurslar sunar. Başlamak için bazı seçenekler şunlardır. Oracle, bazı özel işlevler ve ek özellikler sunduğu için en farklı olanı diye düşünebilirim.
- Creating PostgreSQL Databases kursu
- Introduction to SQL Server kursu
- Introduction to Oracle SQL kursu
SQL Hakkında Daha Fazla Bilgi Edinin
DataCamp ile SQL öğrenmeye devam edin. Başlamanıza yardımcı olacak birkaç başka eğitim de yazdım. Umarım faydalı bulursunuz.
Ayrıca, özgeçmişinizde harika göründüğünü düşündüğüm SQL Associate Certification programımızı da değerlendirin.

Tiktok'ta veri bilimci ve GeorgiaTech'te yüksek lisans öğrencisi olarak, veri bilimine doğuştan bir tutkuyla bağlıyım; teknoloji, risk ve sürekli öz gelişimi birleştiren özgün bir kariyer yolu oluşturdum. Merchant Platform'da Veri Bilimci olarak görev yaptığım dönemde, karmaşık veri modelleriyle riskleri azaltıp sahtekarlıkla mücadele ederek haftalık olarak binlerce dolar tasarruf sağladım. Kendi kendime öğrenmeye sayısız saat ayırarak, saygın kurumlardan sertifikalar alarak ve Derin Öğrenme, TensorFlow ve Sosyal Ağ Analizi gibi konularda yetkinlik kazanarak yeteneğimi geliştirdim. DataCamp ve diğer eğitim platformlarında bu bilgi birikimini başkalarına ilham vermek ve onları eğitmek için kullanıyor, veri bilimi alanında yeni yollar açıyor ve azim ile doğru verinin birleştiğinde her riskin bir fırsata dönüştürülebileceğini gösteriyorum.
SQL COUNT() SSS
COUNT() yalnızca belirli satırları sayabilir mi?
Evet, yalnızca belirli kriterleri karşılayan satırları saymak için COUNT() ile birlikte WHERE ifadesini kullanabilirsiniz. Örneğin:
SELECT COUNT(*) FROM employees WHERE department = 'Sales';
COUNT(*) ile COUNT(column_name) arasındaki fark nedir?
COUNT(*), NULL değerler içeren satırlar dahil bir tablodaki tüm satırları sayar. COUNT(column_name) ise yalnızca belirtilen sütunun NULL olmadığı satırları sayar.
COUNT() ile farklı değerleri sayabilir miyim?
Evet, bir sütundaki benzersiz değerleri COUNT() ile DISTINCT anahtar sözcüğünü birleştirerek sayabilirsiniz:
SELECT COUNT(DISTINCT department) FROM employees;
COUNT() yinelenen satırları nasıl ele alır?
Varsayılan olarak, COUNT(*) yinelenenler dahil tüm satırları sayar. Yalnızca benzersiz satırları saymak için COUNT(DISTINCT column_name) kullanın.