Ana içeriğe atla

SQL Komutları Sözlüğü—En Popüler 25 SQL Komutuna Genel Bakış

En popüler 25 SQL komutunun temelini ve nasıl kullanılacağını öğrenin.
Güncel 22 Nis 2026  · 8 dk. oku

SQL nedir?

Yapılandırılmış Sorgu Dili olarak da bilinen SQL, veritabanlarındaki büyük miktardaki veride arama yapmak ve analiz için belirli bilgileri döndürmek üzere kullanılan güçlü bir araçtır. SQL öğrenmek, iş analisti, veri analisti, veri bilimci veya veri mühendisi rollerine girmek isteyen herkes için temel bir gerekliliktir. 

Bu eğitimde, veritabanıyla ilgili görevlerinizin çoğu için yeterli olacak en yaygın 25 SQL komutunu öğreneceksiniz.

Örneklerle SQL Komutları

Örnek tablo

Bu eğitim boyunca films ve soundtracks tablolarını kullanacağız.

films 

movie_name

director

revenue

date

genre

language

Avengers: Age of Ultron

J. Whedon

1400000000

2015

Aksiyon

İngilizce

Amelie

Jean-Pierre Jeunet

174000000

2002

Dram

Fransızca

soundtracks

soundtrack

composer

date

Inception: Music from the Motion Picture

Hans Zimmer

2010

Le Fabuleux Destin D’Amelie Poulain

Yann Tiersen

2001

1. SELECT

SELECT deyimi, sonuçta hangi veritabanı tablosu sütunlarının yer alacağını belirtmek için kullanılır. 

Bu örnek yalnızca movie_name ve director sütunlarını seçer; diğer sütunlar döndürülmez.

SELECT movie_name, director
FROM films;

Bir tablodaki tüm sütunları seçmek için SELECT * ("yıldız" olarak okunur) çalıştırabilirsiniz. Bu örnek films tablosundaki tüm sütunları seçer.

SELECT * 
FROM films;

2. LIMIT

Bir tablodan döndürülen satır sayısını sınırlamak, sorgu süresini hızlandırmak için faydalı bir yöntemdir. Satır sayısını sınırlamak için LIMIT komutunu kullanabilirsiniz. Bu örnek films tablosundaki tüm sütunları seçer ve sonuçları ilk on satırla sınırlar.

SELECT *
FROM films
LIMIT 10;

3. AS

Sonuçları döndürürken bir sütunu veya tabloyu yeniden adlandırmak için AS komutunu kullanarak çıktılara bir takma ad atayabilirsiniz. Bu örnek movie_name sütununu seçer ve ona movie_title takma adını verir.

SELECT movie_name AS movie_title
FROM films;

4. SELECT DISTINCT

Veri kümelerinde sıklıkla yinelenen satırlar veya bir sütunda yinelenen değerler bulunur. SELECT ile DISTINCT birleştirildiğinde mükerrerler kaldırılır. Bu örnek director sütunundaki benzersiz değerleri döndürür.

SELECT DISTINCT director
FROM films;

5. COUNT

COUNT(), bir tabloda veya grupta bulunan satır sayısını döndürür. Bu örnek films tablosundaki satır sayısını döndürür ve sonucu number_of_films olarak yeniden adlandırır.

SELECT COUNT(*) AS number_of_films
FROM films;

SQL’i Ücretsiz Öğrenmeye Başlayın

Introduction to SQL

975.9K learners
Yalnızca iki saatte SQL kullanarak ilişkisel veritabanları oluşturmayı ve sorgulamayı öğrenin.
See DetailsRight Arrow

Data Manipulation in SQL

250.8K learners
PostgreSQL’de çok çeşitli veri bilimi sorularını yanıtlamak ve analiz için sağlam veri kümeleri hazırlamak için gerekli karmaşık SQL sorgularında ustalaşın.

6. MIN 

MIN(), sayısal bir sütundaki en küçük değeri döndürür. Metin sütunlarında MIN() alfabetik olarak ilk değeri döndürür. Bu örnek, en düşük gelire sahip filmi döndürür. 

SELECT MIN(revenue) AS minimum_revenue,
FROM films;

7. MAX

MAX(), sayısal bir sütundaki en büyük değeri döndürür. Metin sütunlarında MAX() alfabetik olarak son değeri döndürür. Bu örnek, en yüksek gelire sahip filmi döndürür. 

SELECT MAX(revenue) AS maximum_revenue,
FROM films;

8. SUM

SUM(), sayısal değerlerin toplamını döndürür. Bu örnek, films tablosunda listelenen tüm filmlerin toplam gelirini döndürür. 

SELECT SUM(revenue) AS total_revenue
FROM films;

9. AVERAGE

AVERAGE, bir sütunun aritmetik ortalamasını hesaplar. Bu örnek, films tablosunda listelenen tüm filmlerin ortalama gelirini döndürür. 

SELECT AVERAGE(revenue) AS average_earned
FROM films;

10. WHERE

WHERE koşulu, belirli bir durumu karşılayan satırları filtreler. Örneğin, aşağıda 500 milyon dolardan fazla kazanan filmleri filtreliyoruz.

SELECT revenue 
FROM films
WHERE revenue > 500000000;

Filtreleme için <, >, =>, <=, == (eşittir), != (eşit değildir) gibi diğer koşullu operatörler de kullanılabilir.

11. HAVING

HAVING koşulu, WHERE koşuluna benzer ancak yalnızca toplu (aggregate) fonksiyonlarla kullanılabilir; WHERE ile kullanılamaz. Örneğin, aşağıdaki sorguda kategorisinde en az 50 film bulunan tüm film türlerini seçiyoruz:

SELECT movie_name, director, date, COUNT(genre)
FROM films
GROUP BY genre
HAVING COUNT(genre) >= 50;

Aşağıda, filmleri yaş derecesine göre gruplandıran ve ortalama geliri 100 milyonun üzerinde olan derecelendirmeleri seçen bir başka örnek yer alıyor:

SELECT movie_name, director, date, revenue
FROM films
GROUP BY age_rating
HAVING AVERAGE(genre) >= 100;

12. AND

AND operatörü, birden fazla koşulu sağlayan satırları filtrelemek için kullanılır. Aşağıdaki örnekte, 500 milyon dolardan fazla hasılat yapan İngilizce filmleri filtreleyeceğiz.

SELECT *
FROM films
WHERE revenue > 500000000 AND
     language == "English";

13. OR

OR, OR ile ayrılmış koşullardan herhangi biri doğruysa satırları alt kümeye ayırmanıza olanak tanıyan bir başka koşullu operatördür. Bu örnek, 100 milyon dolardan az kazanan İngilizce filmleri veya 500 milyon dolardan fazla kazanan Fransızca filmleri döndürür. 

SELECT *
FROM films
WHERE (revenue < 100000000 AND language == "English") OR
     (revenue > 500000000 AND language  == “French”);

14. BETWEEN

BETWEEN, belirli bir aralık içindeki satırları alt kümeye ayırmanıza olanak tanır; bu da WHERE koşullarını daha basit ve okunaklı hale getirir. Aşağıdaki örnekte 2020 ile 2022 arasında yayımlanan tüm filmleri seçiyoruz.

SELECT *
FROM films
WHERE date BETWEEN 2020 AND 2022;

15. IN

IN operatörü, birden çok OR ifadesi için kısayoldur. Bu örnek, şu yıllardan herhangi birinde yayımlanan tüm filmleri döndürür: 1998, 1966, 2001 ve 2012.

SELECT movie_name, date, revenue
FROM films
WHERE date IN (1998, 1966, 2001, 2012);

16. LIKE

LIKE operatörü, joker karakterler olarak adlandırılan özel dizeleri kullanarak bir metin sütununda desen aramanıza olanak tanır. Joker karakterler, belirli bir desene uyan metin dizelerini bulmanızı sağlar. Örneğin, yönetmen sütununda “A% W%” jokerini kullanmak, adı A ile başlayan ve soyadı W ile başlayan tüm yönetmenleri bulur. 

SELECT *
FROM films
WHERE director LIKE "A% W%";

17. GROUP BY

GROUP BY, satırları sütun değerlerine göre gruplamanızı sağlar. GROUP BY genellikle COUNT, MIN, MAX, AVERAGE gibi toplu fonksiyonlarla birlikte kullanılır. Aşağıdaki örnekte her film türünün ortalama gelirini buluyoruz.

SELECT AVERAGE(revenue), movie_name, director, date
FROM films
GROUP BY genre;

Her tür için en düşük, en yüksek geliri veya film sayısını bulmak üzere MIN, MAX veya COUNT(revenue) de kullanabilirdik. GROUP BY ifadesinin, bir toplu fonksiyonla birlikte kullanılmıyorsa pratikte sorguyu etkilemediğine dikkat edin.

18. ORDER BY

ORDER BY, satırları bir sütun değerine göre sıralamanızı sağlar. ASC veya DESC ekleyerek artan (varsayılan) ya da azalan düzende sıralayabilirsiniz. Bu örnek geliri artan düzende sıralar. 

SELECT *
FROM films
ORDER BY revenue ASC;

19. UPDATE

UPDATE, mevcut bir tablodaki tekil hücrelerin değerlerini değiştirmek için kullanılır. SET anahtar sözcüğü ile birlikte kullanılır. Bu örnek yönetmeni “J. Whedon” olanları “Joss Whedon” olarak günceller. 

UPDATE films
SET director = "Joss Whedon"
WHERE director = "J. Whedon"

UPDATE ifadeleri yazarken WHERE koşulu kritik öneme sahiptir. Olmadan yazılsaydı, yukarıdaki sorgu tüm filmleri Joss Whedon tarafından yönetilmiş gibi yapardı.

20. ALTER TABLE

ALTER TABLE ifadesini, tablonun ve sütunlarının özelliklerini değiştirmek için kullanabilirsiniz (hücre değerlerini değil). Örneğin, sütun adlarını değiştirmek, yeni sütun eklemek, kaldırmak veya veri türlerini değiştirmek. Aşağıdaki örneklerde date sütununu kaldırmayı ve age_rating sütununu eklemeyi gösteriyoruz. 

ALTER TABLE films
DROP COLUMN date;
ALTER TABLE films
ADD COLUMN age_rating;

21. CREATE TABLE

CREATE TABLE, bir veritabanında yeni bir tablo oluşturur. Aşağıda dört sütunlu bir “libraries” tablosu oluşturuyoruz: id adlı tamsayı sütunu, name adlı karakter sütunu, version adlı karakter sütunu ve num_downloads adlı tamsayı sütunu.

CREATE TABLE libraries (
   lib_id int,
   name varchar(100),
   version varchar(100),
   num_downloads int
)

22. INSERT INTO

INSERT INTO ifadesi, bir tabloya yeni satırlar eklemek için kullanılabilir. Bu örnekte films tablosuna “Doctor Strange” filmini ekliyoruz. 

INSERT INTO films (movie_name, director, revenue, date, genre, language)
VALUES ("Doctor Strange 2", “Sam Raimi”, 409000000, 2022, “Action”, “English”)

23. INNER JOIN

INNER JOIN komutu, her iki tabloda da eşleşen değerlere sahip satırları seçer. Örneğin, aşağıdaki sorguda, aynı yıllarda yayımlanan filmleri ve film müziklerini döndürmek için films ve soundtracks tablolarını ortak date sütununda birleştiriyoruz.

SELECT *
FROM films
INNER JOIN soundtracks
ON films.date = soundtracks.date
LIMIT 10;

24. LEFT JOIN

LEFT JOIN, sol tablodaki orijinal kayıtların tümünü korur ve birleştirme alanının eşleşme bulamadığı durumlarda sağ tablodaki sütunlar için eksik değerler döndürür. 

SELECT *
FROM films
LEFT JOIN soundtracks
ON films.date = soundtracks.date
LIMIT 10;

25. RIGHT JOIN

RIGHT JOIN, sağ tablodaki orijinal kayıtların tümünü korur ve birleştirme alanının eşleşme bulamadığı durumlarda sol tablodaki sütunlar için eksik değerler döndürür.

SELECT *
FROM films
LEFT JOIN soundtracks
ON films.date = soundtracks.date
LIMIT 10;

SQL Komutları El İlanı

SQL hakkında daha fazla bilgi edinmek için aşağıdaki kaynaklara göz attığınızdan emin olun:

Konular

SQL hakkında daha fazlasını öğrenin

Kurs

Data Manipulation in SQL

4 sa
317.1K
Master the complex SQL queries necessary to answer a wide variety of data science questions and prepare robust data sets for analysis in PostgreSQL.
Ayrıntıları GörRight Arrow
Kursa Başla
Devamını GörRight Arrow