Temel SQL Komutları ve Örnekleri

Gönderildiği yer: Bilişim | 1

 

Google da gezinirken güzel bir site ve güzel bir paylaşıma rastladım. Benzer bilgileri sayfamda paylaşmayı uygun gördüm. Çoğu zaman SQL komutlarına ihtiyacım oluyor. Ne zaman ihtiyacım olsa o an gerekli olan kodun kullanımını bi an için hatırlayamıyorum. Örnek bir koda ihtiyacım oluyor.

En iyisi sayfamda bulundurmak diye düşündüm 🙂

 

İnser Komutu :

 Veri  Tabanındaki  tabloya  bilgi  kaydetmek  için  kullanılır.
ÖRNEK :
SORU:
Rıza adlı kişiye ait bilgileri kaydediniz.
CEVAP:İnsert into adres value


SELECT  KOMUTU:
Seçme Komutudur.İstenilen alanları tablodan çeker.
ÖRNEK:
SORU:
Tablodaki tüm bilgileri gösteriniz.
CEVAP: Select*From odev


SORU:
Tablodaki kayıtlı isimleri gösteriniz.
CEVAP:
Select ad from odev


SORU: Tablodakilerin adlarını ve memleketlerini gösteriniz.
CEVAP:
Select ad,memleket from odev


SORU: Tablodakilerin yaşlarını ve adlarını gösteriniz.
CEVAP: Select yas,ad from odev


SORU: Tablodakilerin ad,yaş ve memleketlerini gösteriniz.
CEVAP:
Select ad,yas,memleket from odev


WHERE  KOMUTU:Şart koşmak için kullanılır.


SORU:
Memleketi bursa olanları gösteriniz.
CEVAP:
Select*from adres where memleket=’bursa’


SORU: 18 Yaşında olanları gösteriniz.
CEVAP:
Select*from odev where yas=18


SORU: 17 Yaşından büyükleri gösteriniz.
CEVAP:
Select*from odev where yas>17


SORU: 17 Yaşından küçükleri gösteriniz.
CEVAP: Select*from odev where yas <=17

SORU: Yaşı 18 olan Bursalıları gösteriniz.
CEVAP:
Select*from odev where memleket =’bursa’ and yas=18


SORU:
26 Yaşında veya Bursalı olanları gösteriniz.
CEVAP:
Select*from odev where memleket=’bursa’ or yas=2


SORU:
15 Yaşındakilerin memleketini gösteriniz.
CEVAP:
Select memleket from odev where yas=15


IN  KOMUTU:İçinde demektir.
ÖRNEK:
SORU:
Bursalı Ve İznikli olanların adlarını ve yaşlarını gösteriniz.
CEVAP:
Select ad,yas from odev where memleket in(‘bursa’,’iznik’)


BETWEEN  KOMUTU:Arasında demektir.
ÖRNEK:
SORU:
17 ile 29 Yaş arasındakileri gösteriniz.
CEVAP:
Select*From  odev where yas between 17 and 29


SORU:
İsmi ‘a’ ile ‘u’ arasındakileri yazınız.
CEVAP:
Select*From odev where ad between ‘a’ and ‘u’

LİKE  KOMUTU: Karakter türü bilgi icinde arama yapma islemini gerceklestirmek icin kullanilir.
ÖRNEK:
SORU:
Adı h ile başlayanları gösteriniz.
CEVAP:
Select*from odev where ad like ‘h%’

SORU: Adında a geçenleri gösteriniz.
CEVAP: Select*from odev where ad like ‘%a%’

SORU: Sonu a ile bitenleri gösteriniz.
CEVAP:
Select*from odev where ad like ‘%a’

SORU: Başı 53 ile başlayan telefonları gösteriniz.
CEVAP: Select*from odev where tel like ’53%’


AVG  KOMUTU:Ortalama yapmaya yarar.
ÖRNEK:
SORU: Sitedekilerin yaşlarının ortalamasını bulunuz.
CEVAP:
Select avg  (yas) from odev


SORU: Bursalıların yaş ortalamasını bulunuz.
CEVAP:
Select avg (yas) from odev where memleket=’bursa’


MAX  KOMUTU:En büyük değeri gösterir.
ÖRNEK:
SORU:
En yaşlı kişinin yaşını gösteriniz.
CEVAP:
Select max(yas) from odev


SORU: Bursalıların en yaşlısının yaşını gösteriniz.
CEVAP: Select max(yas) from odev where memleket=’bursa’

MİN  KOMUTU:En küçük değeri gösterir.
ÖRNEK:
SORU:
Bursalıların en küçüğü kaç yaşındadır.
CEVAP:
Select min(yas) from odev where memleket=’bursa’


SUM  KOMUTU: Toplama komutudur.Belirtilen alandaki değerleri sayısal olarak toplar.
ÖRNEK: Select sum (yas) From ‘odev’



AS  KOMUTU: Alanları Yeniden adlandırmak için kullanılır.
ÖRNEK: Select sum (yas) as yaslar_toplami from ‘odev’

DİSTİNCT  KOMUTU: Aynı alanlardan bir tanesini göstermeye yarar  (Benzersizleri gösterir).
ÖRNEK:
SORU:
Memleketleri Tekrarsız gösteriniz.
CEVAP:
Select distinct (memleket) FROM ‘odev’

ORDER BY  KOMUTU:Sıralama yapmaya yarar.
ÖRNEK:
SORU: Yaşları küçükten büyüğe doğru sıralayınız.
CEVAP: SELECT* from odev order by yas


DESC  KOMUTU:Büyükten küçüğe sıralama yapmaya yarar.

COUNT  KOMUTU:Count komutu saymaya yarar.
ÖRNEK:
SORU:
Tabloda kaç tane Bursalı vardır.
CEVAP:
Select count (memleket) from odev where memleket=’bursa’


LİMİT  KOMUTU: Ekranda kaç tane sonuç gösterileceğini ayarlar.
ÖRNEK:
SORU:
Tablodaki 5 kaydı gösteriniz.
CEVAP:
Select*from odev limit 5

 
SORU: 3.Kayıttan itibaren 4 Kayıt gösteriniz.
CEVAP:
Select* from odev limit 3,4


DELETE  KOMUTU:Silmeye yarar.
ÖRNEK:
SORU:
Tablodaki Ziya İsimli Kişiyi siliniz.
CEVAP:
delete from odev where ad=’ziya’


UPDATE  KOMUTU:Tablodaki Bilgileri Güncellemeye yarar.
ÖRNEK:
SORU:
Tablodaki Rıza isimli kişinin yaşını 20 yaş arttırınız.
CEVAP:
Update odev set=yas+20 where ad=’riza’

ÖRNEKLER:
SORU:
En Çok okunan 5 haberi gösteriniz.
CEVAP:
Select baslik from haber order by hit desc limit 5

SORU: En son eklenen 5 Haber başlığını gösteriniz.
CEVAP:
Select baslik from haber order by no desc limit 5

SORU: En son eklenen 9 haberin başlığını,özetini,resmini ekranda gösteriniz.
CEVAP:
Select baslik,ozet,resim,hit.from haber order by no desc limit 9

SORU: Haber Kategorilerini sırasıyla ekranda yazdırınız.
CEVAP:
Select no,kategori from haber_kategori  order by sira

SORU: Aynı kategorideki haberlerden rastgele 5 tane başlığı gösteriniz.
CEVAP: Select baslik from haber where kategori =1 order by rand () limit 5

SORU: Tüm haber başlıklarını gösteriniz.
CEVAP:
Select* from haber

Hazırlayan:HALİL İBRAHİM USTA

Kaynak : http://www.dahiweb.com/temel-sql-komutlari-ve-ornekleri

1 Bir Yanıt

  1. meyveci
    |

    Hocam sayac tablomda 3 adet sütun var.
    Tarih(datetime), IPno(nvarchar(50), Toplam(int) şeklinde. Sayac şu şekilde çalışıyor. Gelen IpNo yoksa yeni satır ekliyor varsa Ilgili Ip adresinin karşısında Toplam sütununa +1 ekliyorum.
    Kayıtları listelerken günlük tekil, günlük çoğul, dün tekil, dün çoğul şeklinde sqlden veriyi çekip labellere aktarabiliyorum. Ancak tarihleri süzüp en çok tekil giriş yapılan tarihte count sayısını alamıyorum. Yardımcı olabilir misiniz?
    Not: Tabloyu ilk oluşturduğumda tarih (date) idi. İlk kayıtlar ör: 2016/08/15 00:00:00 şeklinde geliyordu. Bu kayıtlarda

    — select top 1 tarih = convert(varchar(20),Tarih,106) , count(Toplam) grupla
    –from Sayac
    –group by tarih
    –order by grupla desc

    Stored Procedures ile kaydı çekebiliyorum. Ancak datetime ile kayıt satır toplamını alamıyorum.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir