Bir veritabanı uygulamasında veritabanı oluşturulduktan sonra ilk bilinmesi gereken, veritabanındaki verileri sorgulayabilmektir.

Veritabanındaki verileri istediğimiz şekilde alabilir, güncelleyebilir, yeni veriler ekleyebiliriz.

Öncelikle bir veritabanındaki veriyi alma işlemini inceleyelim.

Verilerimizi seçme işlemi için SELECT anahtar kelimesini kullanacağız. Şimdi temelden başlayarak SELECT komutunu inceleyelim:

Öncelikle örnek iki tablo oluşturalım, uygulamalarımızı bu tablo üzerinden çalıştıralım.

sql-ile-veritabani-programlama-1-1

sql-ile-veritabani-programlama-1-1

Yapısı:

SELECT sutunadi FROM tabloadi

Bu sorgu ile “tabloadi” isimli tablonun, “sutunadi” isimli sütunundaki bütün verileri görebiliriz. Örneğin, “ogrenci” tablosundaki adi, kayittarihi ve eposta bilgilerini alalım:

SELECT adi,kayittarihi, eposta FROM ogrenci
————————————————————————————
SELECT * FROM tabloadi
Tablodaki bütün kayıtları görmek istiyorsak tablo isminin yazılacağı yere * yazmaktayız. Örneğin “ogrenci” tablosundaki tüm kayıtları alalım:
SELECT * FROM ogrenci
————————————————————————————
SELECT * FROM tabloadi WHERE sutunadi = deger
Tablodaki kayıtları seçerken sadece belirli özelliklere sahip kayıtları almamız yeterli olabilir. Bunun için WHERE yapısı kullanılmalıdır. Örneğin “ogrenci” tablosundaki tüm kayıtlardan “danismanid”si 1 olan kayıtları alalım:
SELECT * FROM ogrenci WHERE danismanid = 1
————————————————————————————
SELECT * FROM tabloadi WHERE sutunadi = deger AND sutun2adi = deger2

SELECT * FROM tabloadi WHERE sutunadi = deger OR sutun2adi = deger2
WHERE ile filtreleme yapılırken birden çok kontrol ifadesi kullanmak isteyebiliriz. Bu kontrol ifadelerini birleştirmek için AND veya OR anahtar kelimeleri kullanılır:
SELECT * FROM ogrenci WHERE danismanid = 1 AND kayittarihi < ‘01.01.2009’
Bu kod ile “danismanid”si 1 olan ve “kayittarihi” 01.01.2009 tarihinden önce olan bütün kayıtları alır. İki durumun da doğru olması gerekir.
SELECT * FROM ogrenci WHERE danismanid = 1 OR kayittarihi < ‘01.01.2009’
Bu kod ile “danismanid”si 1 olan veya “kayittarihi” 01.01.2009 tarihinden önce olan bütün kayıtları alır. İki durumdan birinin olması yeterlidir.
————————————————————————————
SELECT DISTINCT sutunadi FROM tabloadi
Bu sorgu ile “tabloadi” isimli tablonun “sutunadi” isimli sütununda bir kayıttan birden fazla varsa bir tanesini alır.
SELECT DISTINCT bolumid FROM ogrenci
————————————————————————————
SELECT * FROM tabloadi WHERE sutunadi BETWEEN deger1 AND deger2
BETWEEN ile bir aralığı sorgulayabiliriz. Örneğin 01.01.2008 ile 01.01.2009 arasında kayıt yaptırmış öğrencileri alalım:
SELECT * FROM ogrenci WHERE kayittarihi BETWEEN ‘01.01.2008’ AND ‘01.01.2009
————————————————————————————