Tablolarda bazı değerleri hesaplamak yada bulmak için hazır SQL fonksiyonları kullanılır. Bunların başlıcaları şunlardır:
Bu fonksiyonlar kullanıldığında geriye dönen değer tektir. Tek satırlı, tek sütunlu yani tek hücreli bir tablo döner. Bu tabloda sütun adı olarak istediğimiz bir adı as sutun_adi ifadesiyle kullanabiliriz.
Belirtilen alandaki kayıt sayısını bulur. Kullanımı şöyledir:
select count(alan) as sutun_adi from tablo_adi;
Örnek: ogrenciler tablosunda kaç öğrenci olduğunu bulalım.
select count(ogrenci_no) as mevcut from ogrenciler;
Örnek: 12blsb sınıfında kaç öğrenci olduğunu bulalım.
select count(ogrenci_no) as mevcut from ogrenciler where sinif_kodu='12blsb';
Örnek: 12andbls sınıfında kaç tane kız öğrenci olduğunu bulalım.
select count(ogrenci_no) as mevcut from ogrenciler where cinsiyeti='k' and sinif_kodu='12andbls';
Belirtilen alandaki en küçük değeri bulur. Kullanımı şöyledir:
select min(alan) as sutun_adi from tablo_adi;
Örnek: notlar tablosundaki en küçük notu bulalım.
select min(notu) as enkucuk from notlar;
Örnek: mat dersinden alınan en küçük notu bulalım.
select min(notu) as enkucuk from notlar where ders_kodu='mat';
Örnek: 33 nolu öğrencinin almış olduğu en küçük notu bulalım.
select min(notu) as enkucuk from notlar where ogrenci_no=33;
Belirtilen alandaki en büyük değeri bulur. Kullanımı şöyledir:
select max(alan) as sutun_adi from tablo_adi;
Örnek: notlar tablosundaki en büyük notu bulalım.
select max(notu) as enbuyuk from notlar;
Örnek: geo dersinden alınan en büyük notu bulalım.
select max(notu) as enbuyuk from notlar where ders_kodu='geo';
Örnek: 59 nolu öğrencinin almış olduğu en büyük notu bulalım.
select max(notu) as enbuyuk from notlar where ogrenci_no=59;
personel
personel_no | ad | soyad | konum | maas | derece |
64521 | Erkan | Dereköy | usta | 1650 | 6 |
45154 | Kenan | Filiz | isci | 1200 | 2 |
89411 | Ayşe | Namlı | mudur | 1870 | 8 |
11518 | Zakir | Eren | isci | 1350 | 7 |
98484 | Ömer | Ercan | mudur | 2050 | 9 |
Belirtilen alandaki değerlerin ortalamasını bulur. Kullanımı şöyledir:
select avg(alan) as sutun_adi from tablo_adi;
Örnek: notlar tablosundaki ted dersinden alınan notların ortalamasını bulalım.
select avg(notu) as ortalama from notlar where ders_kodu='ted';
Örnek: 12andbls sınıfının mat dersinin not ortalamasını bulalım.
select avg(notlar.notu) as ortalama from ogrenciler, notlar where ogrenciler.ogrenci_no=notlar.ogrenci_no and ogrenciler.sinif_kodu='12andbls';
Not: Burada iki tabloyu birleştirerek kullandık.
Örnek: 12blsb sınıfındaki erkek öğrencilerin geo dersinin not ortalamasını bulalım.
select avg(notlar.notu) as ortalama from ogrenciler, notlar where ogrenciler.ogrenci_no=notlar.ogrenci_no and ogrenciler.cinsiyeti='e' and ogrenciler.sinif_kodu='12blsb' and notlar.ders_kodu='geo';
Örnek: Yukarıdaki personel tablosuna göre işçilere verilen maaşların ortalamasını bulalım.
select avg(maas) as ort_maas from personel where konum='isci';
Örnek: Yukarıdaki personel tablosuna göre derecesi 8'den büyük olan müdürlerin maaşlarının ortalamasını bulalım.
select avg(maas) as ort_maas from personel where konum='mudur' and derece>8;
Belirtilen alandaki değerlerin toplamını bulur. Kullanımı şöyledir:
select sum(alan) as sutun_adi from tablo_adi;
Örnek: Yukarıdaki personel tablosuna göre personele verilen maaşların toplamını bulalım.
select sum(maas) as toplam from personel;
Örnek: İşçilere verilen maaşların toplamını bulalım.
select sum(maas) as toplam from personel where konum='isci';
Örnek: Derecesi 5'den büyük olan personelin maaşlarının toplamını bulalım.
select sum(maas) as toplam from personel where derece>5;
Bu site meslek liselerinde bilişim bölümü web programcılığı dalında okutulan internet programcılığı dersine yardımcı olması için tasarlanmıştır. İletişim için iletisim@phpdefteri.com
Apache
PHP
MySQL
PhpMyAdmin
EasyPHP
Xampp
AppServ
Wamp
W3School
www.phpdefteri.com © 2010