SQL BETWEEN komutu, belirli bir aralıktaki değerleri seçer. Değerler sayı, metin veya tarihler olabilir.
SQL BETWEEN komutunun kullanımı:
SELECT sütun
FROM tablo_adı
WHERE sütun BETWEEN değer1 AND değer2;
NOT: Yukarıda anlaşılır olması için türkçe karakter kullanılmıştır.Kod yazımlarında Türkçe karakter kullanmayınız.
Örnek veritabanı üzerinde komutumuzu deneyelim.
Tablo adı= Urunler
UrunID |
UrunAdi |
Adet |
Fiyat |
TedarikYeri |
1 |
Süt |
23 |
115 |
Kütahya |
2 |
Su |
46 |
46 |
Bursa |
3 |
Meşrubat |
18 |
90 |
İzmir |
4 |
Bal |
5 |
200 |
Muğla |
Aşağıdaki SQL komutu, fiyatı 10ile 100 arasında olan tüm ürünleri seçer.
SELECT *FROM Urunler
WHERE Fiyat BETWEEN 10 AND 100;
Sonuç çıktısı:
2 |
Su |
46 |
46 |
Bursa |
3 |
Meşrubat |
18 |
90 |
İzmir |
BETWEEN komutu verilen aralığın içindeki değerleri bulmamızı sağlarken aynı zamanda aralık dışındaki verileri bulmamızda yardımcı olabilir. Aşağıdaki komut ifadesi buna bir örnektir.
SELECT *FROM Urunler
WHERE Fiyat NOT BETWEEN 10 AND 100;
Sonuç çıktısı:
1 |
Süt |
23 |
115 |
Kütahya |
4 |
Bal |
5 |
200 |
Muğla |
Daha kapsamlı aramalar için başka SQL komutlarından yardım alabiliriz. Örneğin IN komutuyla birlikte bir örnek yapalım.
SELECT *FROM Urunler
WHERE Fiyat NOT BETWEEN 10 AND 100
AND TedarikYeri NOT IN ('Kütahya', 'Bursa', 'Muğla');
Bu SQL komutu fiyatı 10 ile 100 arasında olan ama tedarikçileri Kütahya, Bursa ve Muğla dışında olan verileri gösterir.
NOT: Yukarda da gördüğünüz gibi sayısal ifadelerde tırnak kullanılmazken metin ifadelerinin anlaşılabilmesi için tırnak işaretleriyle gösterilir.
Aşağıdaki SQL BETWEEN komutu Sehir alanındaki kayıtlardan A ile K harfi arasındaki harflerden herhangi bir harf ile başlayan kayıtlar seçilmektedir.
SELECT *FROM Urunler
WHERE Sehir NOT BETWEEN 'A' AND 'K'
BETWEEN komutunda tarihler Arasında değerler arandığında tarih velileri hem metin hem de sayı olarak aratılabilir.
Örnek tablo üstünde gösterelim.
SiparisID |
KullaniciID |
CalisanID |
SiparisTarihi |
12312 |
2 |
5 |
7/1/2021 |
12342 |
5 |
7 |
12/1/2021 |
12354 |
8 |
2 |
15/1/2021 |
12398 |
4 |
3 |
19/1/2021 |
12456 |
6 |
9 |
23/1/2021 |
Aşağıdaki SQL komutu ’01-OCAK-2021’ ve ’31-OCAK-2021’ arasında olan siparişleri seçer.
SELECT *FROM Urunler
WHERE SiparisTarihi BETWEEN #01/01/2021# AND #31/01/2021#;
Yada
SELECT *FROM Urunler
WHERE SiparisTarihi BETWEEN '2021-01-01' AND '2021-01-31' ;
İki şekilde de arama sonuçları aynı sonucu vericektir.
İçerik: Yusuf Erdoğan