SQL Sorguları ve Örnekleri – Web Tasarım & Programlama
SQL

SQL Sorguları ve Örnekleri

SQL SELECT, SQL WHERE, SQL DISTINCT, SQL AND OR, SQL ORDER BY, SQL INSERT INTO, SQL UPDATE, SQL DELETE, SQL INJECTION, SQL SELECT TOP, SQL LIKE, SQL WILDCARDS SQL IN, SQL BETWEEN, SQL ALIASES, SQL JOINS, SQL INNER JOIN, SQL SELECT INTO, SQL CREATE,  SQL AVG, SQL COUNT,SQL MAX, SQL MIN, SQL LEN, SQL ROUND  kullanımları ile ilgili örnekler.

Sql Komutları açıklamaları ve örnekleri ile bu sorgular kullanılarak hazırlanmış örnek çalışma soruları ve cevapları.

musterino ad soyad dtarih sehir cinsiyet puan
1 Ahmet Cansever 1956-02-19 00:00:00.000 İstanbul E 64
2 Mehmet Aydın 1976-02-19 00:00:00.000 Samsun E 55
3 Aliye Seven 1966-06-10 00:00:00.000 Konya K 45
4 Burak Sayın 1996-02-19 00:00:00.000 İstanbul E 23
5 Beyza Kılıç 1955-12-30 00:00:00.000 Manisa K 85

SQL SELECT 

musteri tablosunda bulunan ad, soyad sütunlarını listelemek için;

musteri tablosunda bulunan tüm kayıtları listelemek için;

SQL SELECT DISTINCT

Bir tabloda bir sütun yinelenen değerleri içerebilir. Distinct ile farklı değerleri listeleyebiliriz.

SQL WHERE

Where anahtar sözcüğü ile sadece belirlenen kurala uygun olan kayıtların listelenmesini sağlayabiliriz.

Örneğin musteri tablosunda sehir sütunu İstanbul olan kayıtları listelemek için;

yada cinsiyet “K” olan kayıtları listelemek için;

Where ile kullanabileceğimiz operatörler;

Operator Açıklama
= Eşit
<> EşitDeğil. Note: Bazı versiyonlarda “!=” kullanılabilir.
> Büyüktür
< Küçüktür.
>= Büyük Eşit
<= Küçük Eşit
BETWEEN arasında
LIKE Örüntü arama
IN Bir sütun için birden çok olası değerleri belirtmek için

SQL AND – OR Kullanımı

AND Operatörü 1. Koşul ve 2. Koşulun doğru olması durumunda çalışır.

Örneğin musteri tablosunda  Cinsiyeti “E” ve Şehri “İstanbul” olanları listelemek için;

OR operatörü 1. Koşul yada 2. Koşulun doğru olması durumunda çalışır.

Örneğin musteri tablosunda şehri İstanbul yada Samsun olanları listelemek için;

AND ve OR operatörü birliktede kullanılabilir.

Örnek olarak musteri tablosunda cinsiyeti ‘K’ olan ve Şehri “Konya” yada “Manisa” olanları listelemek için.

SQL ORDER BY Kullanımı

ORDER BY, varsayılan olarak artan düzende kayıtları sıralar. Azalan kayıtları sıralamak için DESC anahtar sözcüğünü kullanabilirsiniz.

Örnek olarak musteri tablosundaki kayıtları ad sütünuna göre artan ve azan olarak sıralayalım.

Azalan sıralama örneği;

INSERT INTO Kullanımı

Kayıt eklemek için kullanılır.

örnek olarak musteri tablosuna bir kayıt ekleyelim.

SQL UPDATE kullanımı

Kayıtlar üzerinde değişiklik güncelleme yapmak için kullanılır.

Örnek olarak musterino su 3 olan kaydın puanını 90 olarak değiştirelim.

SQL DELETE Kullanımı

Tablodan kayıt silmek için kullanılır.

Örnek olarak musterino su 4 olan kaydı silmek için

musteriler tablosundaki tüm kayıtları silmek için

SQL SELECT TOP Kullanımı

Belirtilen sayıda kaydı görüntülemek için kullanılır.
örnek olarak musteriler tablosundaki ilk 5 kaydı listeleylim.

SQL LIKE Kullanımı

Belirtilen bir değeri aramak için kullanılır.
Örnek olarak musteriler tablosunda şehri S ile başlayan kayıtları listeleyelim.

Şehri s ile biten kayıtları listelemek için;

Şehrin içerisinde “tan” bulunan kayıtları listelemek için;

SQL YER TUTUCU KARAKTERLER

musteriler tablosunda adı “al” ile başlayan kayıtları listelemek için;

musteriler tablosunda adı “al” ile biten kayıtları listelemek için;

musteriler tablosunda ismi A ile başlayıp ondan sonraki 2 karakteri herhangi bir harf olan ve e ile devam eden ve ondan sonraki harfi belli olmayan kayıtları listeleyelim.(Adı Ahmet olanları listeleyeceğiz. :))

Adı a ile b ile yada s ile başlayan kayıtları listeleyelim.

şimdide tam tersi a ile b ile yada s ile başlamayan kayıtları listeleyelim.

SQL IN Kullanımı

IN operatörü, WHERE yan tümcesinde birden fazla değer belirlemenizi sağlar.
Örnek olarak şehri İstanbul ve Konya olan kayıtları listeleyelim.

SQL BETWEEN KULLANIMI

Between operatörü belirli kriterler arasındaki kayıtları listelemek için kullanılır. Sayı metin yada tarih aralığı verilebilir.

Örnek olarak musteriler tablosunda puanı 70 ile 90 arasında olan kayıtları listeleyelim.

Doğum tarihi 01/01/1996 ile 01/01/2006 arasındaki kişileri listelemek için;

musteriler tablosunda adı C ve E arasında olan kayıtları listeleyelim.

SQL ALIASES Kullanımı

SQL tablosunda yer alan sütunlara geçici bir ad vermek için kullanılır.

SQL JOIN Kullanımı

Orders ve Customers tablolarını kullanarak oluşturulan örneği inceleyelim.

OrderID CustomerID OrderDate
10308 2 1996-09-18
10309 37 1996-09-19
10310 77 1996-09-20
CustomerID CustomerName ContactName Country
1 Alfreds Futterkiste Maria Anders Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Mexico
3 Antonio Moreno Taquería Antonio Moreno Mexico
Sorgumuzu çalıştırdığımızda
OrderID CustomerName OrderDate
10308 Ana Trujillo Emparedados y helados 9/18/1996
10365 Antonio Moreno Taquería 11/27/1996
10383 Around the Horn 12/16/1996
10355 Around the Horn 11/15/1996
10278 Berglunds snabbköp 8/12/1996

SQL LEFT JOIN Kullanımı

SQL RIGHT JOIN Kullanımı

SQL SELECT INTO Kullanımı

SELECT INTO deyimi bir tablodan veri seçer ve yeni bir tabloya ekler.

örnek olarak musteriler tablosunun musterilerbackup isimli yedeğini oluşturabiliriz.

Sadece şehri “İstanbul” olan kayıtları eklemek için;

SQL CREATE Kullanımı

Yeni bir database oluşturmak için;

SQL CREATE TABLE Kullanımı

Yeni tablo oluşturmak için kullanılır.

SQL AVG  Kullanımı

AVG () işlevi sayısal bir sütunun ortalama değerini döndürür.

Örnek olarak musteriler tablosunda puan ortalamasını bulalım.

Aşağıdaki sorguda ise musteriler tablosunda puanı, puan ortalamasının üstünde yer alan kayıtlara ait ad ve soyad verileri listelenmektedir.

SQL COUNT Kullanımı

COUNT () işlevi, belirtilen ölçütlerle eşleşen satır sayısını döndürür.

Örnek olarak musteriler tablosundaki toplam kayıt sayısını bulalım.

Şimdide musteriler tablosunda kaç farklı şehir olduğunu bulalım.

Şimdi de Şubat ayında doğan Müşterileri sayısını bulalım.

Aşağıdaki SQL Deyimi ise “Orders” tablosundan “CustomerID” = 7 ye ait siparişlerin sayısını bulur.

SQL ROUND Kullanımı

Ondalıklı sayıyı yuvarlamak için kullanılır.

SQL LEN() KULLANIMI

LEN () işlevi, bir metin alanındaki değerin uzunluğunu döndürür.
Örnek olarak musteriler tablosunda ad alanını yanına soyad uzunluklarını yazdıralım.

SQL NOW() Kullanımı

NOW fonksiyonu sistem tarih ve saatini döndürür.

Örnek olarak Aşağıdaki SQL deyimi “Products” tablosundan bugün için ürün adını ve fiyatını seçelim.

SQL MAX Kullanımı

MAX () işlevi, seçilen sütunun en büyük değeri döndürür.

Örnek olarak musteriler tablosunda en yüksek puanı görüntüleyelim.

Şimdide en yüksek puana sahip müşterileri ad ve soyadı ile listeleyelim.

SQL MIN Kullanımı

MIN() işlevi, seçilen sütunun en küçük değeri döndürür.

Ogrenciler tablosunda en düşük puanı görüntüleyelim.

Şimdide en düşük puana sahip ogrencileri ad ve soyadı ile listeleyelim.

 

SQL Örnek Çalışma Soruları

SELECT KOMUTU İLE İLGİLİ SQL SORGULARI

  1. Öğrenci tablosundaki tüm kayıtları listeleyin.
 
  1. Öğrenci tablosundaki öğrencinin adını ve soyadını ve sınıfını listeleyin.
 
  1. Öğrenci tablosundaki cinsiyeti Kız ve Sınıfı 10A olan öğrencileri listeleyiniz.
 
  1. Öğrenci tablosundaki 10A veya 10B sınıfındaki öğrencilerin adını, soyadını ve sınıfını listeleyiniz.
 
  1. Öğrenci tablosundaki öğrencinin adını, soyadını ve numarasını okul numarası olarak listeleyiniz.
 
  1. kitap tablosundaki sayfa sayısı 50 ile 200 arasında olan kitapların adını ve sayfa sayısını listeleyiniz.
 
  1. Öğrenci tablosunda adı Fidan, İsmail ve Leyla olan öğrencileri listeleyiniz.
 
  1. Öğrenci tablosundaki sınıfı 9A olan Erkekleri veya sınıfı 9B olan kızların adını, soyadını, sınıfını ve cinsiyetini listeleyiniz.
 
  1. Öğrenci tablosunda doğum yılı 1989 olan öğrencileri listeleyiniz.
 

DELETE KOMUTU İLE İLGİLİ SQL SORGULARI

1- Örnek ismini ikici harfi a olan kayıtları siler

 

2- Örnek notu 50 den küçük olan kayıtları siler

 

3- Örnek bilgisayar öğrencilerinin tüm not bilgilerini notlar tablsoundan silen sql komutu

 

4- örnek: yazar tablosunu kaldırmak için gerekli olan sql deyimini yazınız.

 

5- örnek: isimi Kamil olan öğrenciyi siliyoruz.

 

6- elma tablosunun id nosu 15’ten büyük olan verileri siler

 

7- elma tablosunun id nosu 3 ile 10 arasında olan verileri siler

 

8- elma tablosunun cins alanı “zonguldak” olan kayıt(lar)ı siler.

 

9- elma tablosundan id nosu 1 olan veriyi siler;

 

10- Doğum yeri İzmir olan 11b sınıfındaki erkek öğrencileri silin

 

LIKE KOMUTU İLE İLGİLİ SQL SORGULARI

1- ev kelimesi ile başlayan kayıtlar(eve, evde, eve giderken, evli…)

 

2- içerisinde Ankara kelimesi geçen kayıtlar

 

3- karakterden oluşan, son 2 karakteri en ve ilk karakteri herhangi bir karakter olan kayıtlar(sen, ben, fen…)

 

4- A ile K arasındaki tüm harflerle (A ve K dadil) başlayan tüm kayıtlar(Ahmet, Burak, Esra, Kemal…)

 

5- A ile L arasındaki harfler dışındaki harfler ile başlayan tüm kayıtlar(Melih, Mustafa, Sevcan)

 

INSERT INTO KOMUTU İLE İLGİLİ SQL SORGULARI

1- Adı Ali Dursun olan yazarı yazarlar tablosuna ekleyelim;

 

2- Adı Ali Dursun olan yazarı yazarlar tablosuna ekleyelim;

 

3- Adı Ali Dursun olan yazarı yazarlar tablosuna ekleyelim;

 

4- Adı Yaşar Kemal ve Mahmut Demir olan iki yazarı yazar tablosuna tek sorgu ile ekleyiniz.

 

5- Örn: 10C sınıfı öğrencilerinin adını soyadını yazarlar tablosuna ekleyelim

 

6- Tablomuzdaki bütün alanları kopyalama:

 

7- Tablomuzdaki alanların adını değiştirerek kopyalama:

 

8- Belli kritere göre seçilen kayıtları kopyalama

 

9- Kırmızı ile yazdıklarım bir öğrenci için girilecek bilgilerdir.

 

10- Personel tablosunda sadece Personel_no ve Bölümü alanlarına veri girişi yapmak istiyorsak SQL sorgu kodu aşağıdaki şekilde olacaktır.

 

ORDER BY KOMUTU İLE İLGİLİ SQL SORGULARI

1- Küçükten büyüğe sıralama için ASC anahtarını koymayabilirsiniz. Zaten default olarak sonuçlar bu şekilde geliyor

 

2- Sorgularımızı DESC anahtar kelimesini kullanarak büyükten küçüğe olacak şekilde revize edelim.

 

3- Burada, çok sayıda alana göre sıralama, farklı sıralama kriterlerine göre gerçekleştirilebilir. Örneğin aşağıdaki SELECT komutu ile ad alanına göre artan, soyad alanına göre azalan, maas alanına göre artan sıralanmış tablo elde edilmektedir.

 

4- Personel isimli bir tabloda sicil, ad, soyad, maas sütunları olsun. Maaşa göre artan sırada (küçükten büyüğe doğru) sıralı olarak listeleyiniz.

 

5- Her bölümdeki ortalama maaş nedir?

 

UPDATE KOMUTU İLE İLGİLİ SQL SORGULARI

  1. Elemanlar tablosundan maaşı 1500 TL den az olanların maaşlarını 1800 TL olarak güncelleyin.
 
  1. Şirket çalışanlarından Leyla’nın maaşını 2000 tl olarak güncelleyiniz.
 
  1. Ali işten ayrıldığı için onun yerine gelen Hakanın bilgilerini şu şekilde güncelleyiniz Ad = Hakan Maaş = 2200 Tc = 6321456.
 
  1. elma tablosundan id nosu 1 olan veri(ler)in cins alanını amasya yapar.
 
  1. Örnekte ‘Global Fast Foods’ veriabanındaki bir mü şterinin telefon numarası UPDATE komutu kullanılarak de ğiştirilmektedir. ‘copy_f_customers’ tablosu bu i şlemde kullanılmaktadır.
 
  1. Global Fast Foods’ veritabanı kullanılarak mü şteri numarası 123 olan satır silmek için bir örnek verilmektedir.
 
  1. 2500 tl’den fazla maaş ve 200 tl’den az prim alan personellerin primini 50  tl arttırın
 
  1. işe balsama tarihi 2015 öncesi veya primi 300 tl’nin altında olanların maaşına 100 tl zam yapın
 
  1. Öğrenci listesi tablosun’da ki adı deniz olan bütün kayıtların bölümünü bilişim olarak değiştirir.
 
  1. Ogrenci Listesindeki bütün ad alanındaki verileri Deniz yapar. (bu kullanıma dikkat etmeli. Şart verilmediği için bütün ad alanındaki verileri Deniz yapacaktır.
     
Daha Fazla SQL Örneği İçin Tıkla

11 Yorum

  • notlar çok düzenli ve anlaması kolay elinize sağlık. bu dönem bir projenin altına tek başıma girdim . hadi hayırlısı bakalım.

  • databese ye random olarak 2000 tane sayı girildi 1 ie 36 sayı aralığında

    benim yapmak istediğim örneğin 5 ci butona bastım databas’in içindeki tüm 5 rakamlarından sonra gelen rakamları listelemek buna sanıl bir sorgu yazmak gerek teşekürler

  • kenan

    12 Aralık 2016 at 20:08

    merhaba yapmaya calıştıgım ıhtıyacım olan bır program olusturmaya calısıyorum ama daha basında takıldım . ” gunluk olarak satıslarını aldıgım verılerı exel dosyasına cekıyorum exeldekı verıyı bır program aracılıgıyla sql e yukleyıp farklı bır exelde pıvotlar ıle raporlama yapmak ıstıyorum . ” bunu gerceklestırmem de yardımcı olabılırmısınız?? veya excelde modul ıle bunu gerceklestırebılırmıyım şimdiden tesekkür ederim

    Cevapla

    Yorum Yap

  • Sayın Ahmet Bey
    Tablo alanlarını Türkçe isim verirseniz anlaşılması daha kolay olacaktır.
    Teşekkür ederiz.

  • merhaba yapmaya calıştıgım ıhtıyacım olan bır program olusturmaya calısıyorum ama daha basında takıldım . ” gunluk olarak satıslarını aldıgım verılerı exel dosyasına cekıyorum exeldekı verıyı bır program aracılıgıyla sql e yukleyıp farklı bır exelde pıvotlar ıle raporlama yapmak ıstıyorum . ” bunu gerceklestırmem de yardımcı olabılırmısınız?? veya excelde modul ıle bunu gerceklestırebılırmıyım şimdiden tesekkür ederim

Yorum yap

Sayfamızı YouTube'da da takip etmek ister misiniz?
Holler Box