Kurs
SQL BETWEEN operatörü, belirli bir aralıktaki değerleri filtrelemek için kullanılan bir araçtır. Sorgu okunabilirliğini basitleştirmek ve artırmak için SELECT deyimine dahil edilir.
SQL'e yeniyseniz, öğreniminize hızlı bir başlangıç yapmak ve yetkin bir analist olmak için Introduction to SQL ve SQL Fundamentals kurslarını almanızı öneririm.
Kısa Cevap: SQL BETWEEN Operatörü Nedir?
BETWEEN operatörü, bir veri kümesinde belirli bir aralıkta kalan satırları filtreleyip döndürür. SELECT deyimine eklendiğinde, BETWEEN operatörü verilen başlangıç ve bitiş değerlerini de döndürür. Bu güçlü operatör; tarih, sayısal ve metin verileri dahil olmak üzere çeşitli SQL veri türlerinde değerler döndürebilir.
Aşağıdaki örnekte, sorgu employees tablosundan maaşları 50.000 ile 60.000 arasında olan tüm çalışan kayıtlarını seçmek için kullanılır. BETWEEN operatörünün kapsayıcı (inclusive) olduğunu unutmayın; bu nedenle 50.000 ve 60.000 de sonuca dahildir.
-- Select all columns from the Employees table
SELECT *
FROM employees
-- Filter the results to include only employees with salaries between 50,000 and 60,000
WHERE salary BETWEEN 50000 AND 60000;
SQL BETWEEN Operatörünün Sözdizimi
BETWEEN operatörü, değerleri filtrelemek için SELECT deyiminde basit bir sözdizimine sahiptir. Filtrelenen veri aralığının alt ve üst sınırlarını belirtmek için WHERE koşulu içinde kullanılır.
-- Select the specified columns from the table
SELECT column_name(s)
FROM table_name
-- Filter the results to include only those where column_name values fall between (inclusive)
WHERE column_name BETWEEN value1 AND value2;
DataCamp’in SQL Temelleri El Kartı, BETWEEN dahil yaygın operatörlerin sözdizimine hızlıca bakmak istediğinizde de işinize yarar.
SQL BETWEEN Hakkında Hatırlanması Gereken Önemli Noktalar
BETWEEN operatörünü kullanırken, SELECT deyiminin WHERE koşulunda yer aldığını bilmek önemlidir. Bu konumlandırma, BETWEEN operatörünün WHERE koşulunda belirtilen sütunu filtrelemesini sağlar.
-- Select all columns from the Employees table
SELECT *
FROM employees
-- Filter the results to include only employees with employeee_id between 10 and 18
WHERE employee_id BETWEEN 10 AND 18;
BETWEEN operatörü, kısa ve öz bir filtreleme sağladığı için aralıklar içinde değerleri filtrelemede tercih edilir. Sözdizimi basittir ve birden fazla koşulu filtrelerken sorgu okunabilirliğini artırır.
BETWEEN operatörü olmadan, benzer sonuçlara ulaşmak için diğer operatörleri kullanırız. WHERE koşulunda operatörlerin kullanımına dikkat edin; bu, sorguyu daha az okunur ve daha karmaşık hale getirir.
-- Select the first name, last name, and salary columns from the Employees table
SELECT first_name, last_name, salary
FROM employees
-- Filter the results to include only those employees whose salary is greater than or equal to 50,000
-- and less than or equal to 60,000
WHERE salary >= 50000 AND salary <= 60000;
Sorgu, BETWEEN operatörüyle daha okunabilir ve kolay anlaşılırdır.
-- Select the first name, last name, and salary columns from the Employees table
SELECT first_name, last_name, salary
FROM employees
-- Filter the results to include only those employees whose salary is between 50,000 and 60,000 (inclusive)
WHERE salary BETWEEN 50000 AND 60000;
BETWEEN operatöründe belirtilen değerlerin sonuçlara dahil edildiğini her zaman hatırlayın. SQL sorgusu, bu değerlerin verinin alt ve üst sınırları olarak yer aldığı kayıtları döndürür.
SQL BETWEEN’in Yaygın Kullanım Senaryoları
BETWEEN operatörü, sayısal veya tarih aralıklarını filtrelemek gibi farklı kullanım senaryolarına sahiptir. Bir göz atalım.
BETWEEN ile sayısal aralıkları filtreleme
BETWEEN operatörü, sayısal verileri filtrelemek için yaygın olarak kullanılır. Bu senaryoda, belirli bir aralıkta kalan verileri getirebilirsiniz. Aşağıdaki örnekte, 62.000 ile 70.000 arasında maaşlara sahip satırları döndürmek için employees tablosunu filtreliyoruz.
-- Select all columns from employees table
SELECT *
FROM employees
-- Filter the results to include only those employees whose salary is between 62,000 and 70,000 (inclusive)
WHERE salary BETWEEN 62000 AND 70000;
BETWEEN ile tarih aralıklarını filtreleme
BETWEEN operatörü, belirli tarih aralıkları içindeki kayıtları da filtreleyebilir. Bu kullanım, tarih ve saat değerleri içeren verileri analiz ederken faydalıdır.
employees tablomuzda hire_date adlı bir sütun olduğunu varsayarsak, belirli bir dönemde işe alınan çalışanların kayıtlarını bulmak için BETWEEN operatörünü kullanabiliriz.
-- Select all columns from employees table
SELECT *
FROM employees
-- Filter records where hire date is between January 1, 2022, and December 31, 2022 (inclusive)
WHERE hire_date BETWEEN '2022-01-01' AND '2022-12-31';
BETWEEN’i diğer operatörlerle birleştirme
BETWEEN operatörünü, karmaşık filtreleme senaryolarına ulaşmak için diğer operatörlerle de birleştirebilirsiniz. Bu teknik, daha hedefli bir filtreleme istediğinizde önemlidir. Aşağıdaki örnekte, yalnızca Satış (Sales) departmanını içeren satırları filtrelemek için WHEN koşulunda eşittir (=) operatörünü kullandık. Ardından sorgu, 50.000 ile 60.000 arasındaki maaşları içeren kayıtları da kapsayacak şekilde BETWEEN operatörünü kullanarak filtrelemeyi derinleştirir.
-- Select all columns from employees table
SELECT *
FROM employees
-- Filter records where department is 'Sales' and salary is between 50,000 and 60,000 (inclusive)
WHERE department = 'Sales' AND salary BETWEEN 50000 AND 60000;
Size uygun bir kurs bulmak için DataCamp’in SQL kurs koleksiyonuna göz atmanızı öneririm.
SQL Between Komutunun Sınırlamaları
Son olarak, bazı sınırlamalara ve alternatiflere bakalım.
SQL’de BETWEEN operatörünün sınırlamaları
SQL BETWEEN operatörünün olası sınırlamaları şunlardır:
- Kapsayıcı Sınırların Karıştırılma Potansiyeli:
BETWEENoperatörü belirtilen değerleri alt ve üst sınırlar olarak dahil ettiği için, yanlış kullanıldığında kafa karışıklığına veya beklenmedik sonuçlara yol açabilir. - Büyük Veri Kümelerinde Performans Sorunları:
BETWEENoperatörünü indeksleri belirtmeden kullanmak, özellikle büyük veri kümelerinde performans sorunlarına neden olabilir.
SQL’de BETWEEN operatörüne alternatifler
BETWEEN operatörü belirtilen değerleri alt ve üst sınırlar olarak dahil ettiğinden, hariç tutmalı filtreleme için küçüktür (<) ve büyüktür (>) operatörlerini kullanabiliriz. Bu teknik, bu değerlerin sonuçlara dahil edilmemesini sağlar.
-- Select the first name, last name, and salary columns from the Employees table
SELECT first_name, last_name, salary
FROM employees
-- Filter the results to include only those employees whose salary is greater than 50,000
-- and less than 60,000 (exclusive)
WHERE salary > 50000 AND salary < 60000;
Sonuç
SQL’deki BETWEEN operatörü, verilen aralıklar içindeki değerleri filtrelemek için kullanışlıdır. Veri filtreleme ve dönüştürmede BETWEEN operatörünün önemini anlamak, veri analistleri için kritiktir. SQL becerilerinizi geliştirmek için farklı SQL veri türlerine sahip farklı veri kümeleriyle BETWEEN operatörünü uygulamaya devam etmenizi öneririm.
Sürekli öğrenme, profesyonel alanda öne çıkmanıza yardımcı olur. Daha ileri düzey Reporting in SQL kursunu almanızı ve kapsamlı Associate Data Analyst in SQL kariyer yolunu değerlendirmenizi öneririm. Son olarak, DataCamp ayrıca SQL’i veri analizi için kullanma konusundaki profesyonel başarınızı sergilemenize yardımcı olacak bir SQL Associate Certification sunmaktadır.
Sıkça Sorulan Sorular
SQL BETWEEN operatörü ne yapar?
SQL BETWEEN operatörü, bir değer aralığındaki verileri filtreler.
SQL BETWEEN operatörü nasıl kullanılır?
SQL BETWEEN operatörü, belirtilen sütun verilerini filtrelemek için WHERE koşulu içinde kullanılır.
BETWEEN operatörünü hangi SQL veri türleriyle kullanabilirim?
BETWEEN operatörü; tarih, sayısal ve metin veri türleri dahil olmak üzere farklı veri türleriyle kullanılabilir.
BETWEEN operatörünü diğer operatörlerle birlikte kullanabilir miyim?
Gelişmiş filtreleme için BETWEEN operatöründen önce WHERE koşuluna diğer operatörleri de ekleyebilirsiniz.
Bazı kayıtları hariç tutmak için hangi alternatifleri kullanmalıyım?
SQL BETWEEN operatörünü kullanırken alt ve üst sınır değerlerini dahil etmemek için > ve < operatörlerini kullanmalısınız.
