Merhaba arkadaşlar bu yazımda sık kullanılan bazı SQL fonksiyonlarından bahsedeceğim.
- DISTINCT
Distinct ifadesi tekrar eden kayıtlardan birer tane alarak işlem yapar. Örneğin sitemize ziyaretçilerin hangi şehirlerden geldiğini öğrenmek istiyoruz bu nedenle ziyaretçilerin bulunduğu tabloya SELECT çekiyoruz. Fakat siteye bir şehirden yalnızca bir ziyaretçi girebilir gibi bir koşul olmadığı için bir şehre ait birden çok kayıt olabilir. Bu durumda sorgu sonucunda aynı şehirlerin defalarca gelmesi demektir. İşte bu gibi durumlarda DISTINCT ifadesini kullanarak bir şehrin sorgu sonucunda birkez gelmesini sağlarız.
ZIYARETCILER isimli tablomuz aşağıdaki gibi olsun.
ID | TARIH | SEHIR | ZIYARETSAYISI |
---|---|---|---|
1 | 15.02.2017 | Konya | 12 |
2 | 16.02.2017 | Konya | 10 |
3 | 16.02.2017 | İstanbul | 18 |
4 | 19.02.2017 | Ankara | 5 |
5 | 27.02.2017 | Ankara | 5 |
6 | 22.02.2017 | Ankara | 8 |
7 | 23.02.2017 | Bursa | 12 |
1 |
SELECT DISTINCT SEHIR FROM ZIYARETCILER |
SEHIR |
---|
Ankara |
Bursa |
İstanbul |
Konya |
1 |
SELECT DISTINCT TARIH,SEHIR FROM ZIYARETCILER |
TARIH | SEHIR |
---|---|
15.02.2017 | Konya |
16.02.2017 | İstanbul |
16.02.2017 | Konya |
19.02.2017 | Ankara |
22.02.2017 | Ankara |
23.02.2017 | Bursa |
27.02.2017 | Ankara |
Burada TARIH ve SEHIR alanlarını çektim TARIH alanı tekrarsız geldi fakat SEHIR alanında tekrar eden alanlar var diyebilirsiniz. Bunun sebebi sql sorguyu hazırlarken alan adlarından biri daha fazla veriye sahipse diğerini görmezden gelip onuda listeler. Bu işlemin mantığı sorguda iki kolona tek bir kolon gibi davranmasıdır. Yani 15.02.2017-Konya ile 16.02.2017-Konya ifadeleri aynı olmadığı için DISTINC bu sonucu döndürür.
- MIN()
MIN fonksiyonu seçilen alandaki en küçük değeri verir. Örneğin tablomuzda sitemizi en az ziyaret eden kullanıcıyı bulalım.
1 |
SELECT Min(ZIYARETSAYISI) AS 'MINZIYARET' FROM ZIYARETCILER |
MINZIYARET |
---|
5 |
- MAX()
MAX fonksiyonu seçilen alandaki en büyük değeri verir. Örneğin şimdi de tablomuzda sitemizi en çok ziyaret eden kullanıcıyı bulalım.
1 |
SELECT Max(ZIYARETSAYISI) AS 'MAXZIYARET' FROM ZIYARETCILER |
MAXZIYARET |
---|
18 |
- COUNT
Count eleman sayısını bulmak için kullanılır. Örneğin aşağıdaki soru bize ZIYARETCILER tablosunun eleman sayısını olan 7 sonucunu verir.
1 |
SELECT Count(*) FROM ZIYARETCILER |
- AVG
Avg tabloda istediğimiz bir alan adının ortalamasını almamızı sağlar. Örneğin ziyaretçi sayımızın ortalamasını alabiliriz. Aşağıdaki kodu çalıştırdığım zaman bana 10 sonucunu verdi.
1 |
SELECT Avg(ZIYARETSAYISI) AS 'ZIYARET SAYISI' FROM ZIYARETCILER |
- SUM
SUM fonksiyonu ile belirtilen alandaki değerlerin toplamı elde edilir. Sitemizin toplan ziyaretçi sayısını bulmak için kullanabiliriz. Sadece sayısal alanlarda kullanılabilir. Aşağıdaki kodu çalıştırdığım zaman bana 70 sonucunu verdi.
1 |
SELECT Sum(ZIYARETSAYISI) AS 'ZIYARET SAYISI' FROM ZIYARETCILER |
Soru ve görüşleriniz için yorum yapabilirsiniz. Kolay gelsin .. 🙂