Select İşlemleri
--Personel tablosundaki tüm listeyi getirir
SELECT * FROM Personel
--Personel tablosundaki tüm listeyi getirir
SELECT * FROM Personel
--Sadece istenilen sütündaki verileri gösterir.
SELECT Tc, Ad, Soyad
FROM Personel
FROM Personel
--Sıralama (Alfabetik veya rakamsal sıralama)
--Asc küçükten büyüğe desc tam tersi
SELECT * FROM Personel
ORDER BY Ad ASC --DESC
--Asc küçükten büyüğe desc tam tersi
SELECT * FROM Personel
ORDER BY Ad ASC --DESC
--Önce isme sonra aynı isimde olanları soyisime göre sıralar.
SELECT Ad, Soyad FROM Personel
ORDER BY isim DESC , soyisim DESC
SELECT Ad, Soyad FROM Personel
ORDER BY isim DESC , soyisim DESC
--Koşullu sorgu için WHERE anahtar kelimesi kullanılır.
--Maaşı binlira olanları getirir.
SELECT * FROM Personel
WHERE Maas=1000
--Maaşı binlira olanları getirir.
SELECT * FROM Personel
WHERE Maas=1000
--Maaşı 500 ve 500den küçük olanları getirir.
SELECT * FROM Personel
WHERE Maas<=500
--Maaşı 500den küçük olanları ve ismi kadir olanı getirir.
SELECT * FROM Personel
WHERE Maas
SELECT * FROM Personel
WHERE Maas<=500
--Maaşı 500den küçük olanları ve ismi kadir olanı getirir.
SELECT * FROM Personel
WHERE Maas
--İsminde m harfi olanlar
SELECT * FROM Personel
WHERE isim LIKE '%m%'
--İsmi k ile başlayanlar
SELECT * FROM Personel
WHERE isim LIKE 'k%'
SELECT * FROM Personel
WHERE isim LIKE 'k%'
--İsmi r ile bitenler
SELECT * FROM Personel
WHERE isim LIKE '%r'
SELECT * FROM Personel
WHERE isim LIKE '%r'
--Üçüncü karakteri ‘h’ ve altıncı karakteri ‘t’ olan kayıtları getirir.
SELECT * FROM Personel
WHERE isim LIKE '__h__t'
SELECT * FROM Personel
WHERE isim LIKE '__h__t'
--BAŞ HARFİ A VEYA K OLANLARI GETİRİR
SELECT * FROM Personel
WHERE isim LIKE '%[ak]%'
SELECT * FROM Personel
WHERE isim LIKE '%[ak]%'
--Soy ismi s ile z arasındaki tüm harflerden herhangi biriyle
--başlayanları getirir.
SELECT * FROM Personel
WHERE Soyad LIKE '[s-z]%' AND Soyad LIKE '%a'
--Takma sütun adı as'le verilir.
-- Birden fazla kelime içeriyorsa tırnak arasına yazılmalıdır.
SELECT isim AS Adlar, Maas AS 'Maaşlar Geliri'
FROM Personel
--başlayanları getirir.
SELECT * FROM Personel
WHERE Soyad LIKE '[s-z]%' AND Soyad LIKE '%a'
--Takma sütun adı as'le verilir.
-- Birden fazla kelime içeriyorsa tırnak arasına yazılmalıdır.
SELECT isim AS Adlar, Maas AS 'Maaşlar Geliri'
FROM Personel
--Sütunları birleştirir.
SELECT isim + ' ' + soyisim AS AdSoyad
FROM Personel
SELECT isim + ' ' + soyisim AS AdSoyad
FROM Personel
--Soyadı boş olanları getirir.
SELECT * FROM Personel
WHERE Soyad IS NULL
--Doğum tarihi boş olanları göstermesin
SELECT * FROM Personel
WHERE DogumTarihi IS NOT NULL --and Soyad is NULL
SELECT * FROM Personel
WHERE Soyad IS NULL
--Doğum tarihi boş olanları göstermesin
SELECT * FROM Personel
WHERE DogumTarihi IS NOT NULL --and Soyad is NULL
--Maaşı 1000 ile 2000 arasında olanlar
SELECT * FROM Personel
WHERE Maas BETWEEN 1000 AND 2000
SELECT * FROM Personel
WHERE Maas BETWEEN 1000 AND 2000
--Baş harfi k ile z arasında olanları getirir.
SELECT * FROM Personel
WHERE isim BETWEEN 'k' AND 'z'
SELECT * FROM Personel
WHERE isim BETWEEN 'k' AND 'z'
--İstenilen sayı kadar veri getirme
SELECT TOP 3 * FROM Personel
ORDER BY Tc DESC
--Kayıtların %50sini ve soyadı Kılıç'dan farklı olanları getirir.
SELECT TOP 50 PERCENT * FROM Personel
WHERE Soyad <> 'Kılıç'
ORDER BY Tc ASC
SELECT TOP 3 * FROM Personel
ORDER BY Tc DESC
--Kayıtların %50sini ve soyadı Kılıç'dan farklı olanları getirir.
SELECT TOP 50 PERCENT * FROM Personel
WHERE Soyad <> 'Kılıç'
ORDER BY Tc ASC
--Tanımladığım 3 bölümde çalışan elemanları listele
SELECT * FROM Personel
WHERE BolumNo=1 OR BolumNo=2 OR BolumNo=4
SELECT * FROM Personel
WHERE BolumNo=1 OR BolumNo=2 OR BolumNo=4
SELECT * FROM Personel
WHERE BolumNo IN(1,2,4)
--Zamlı maaşları göster
SELECT Maas AS 'Asıl Maaş', Maas+1000 AS 'Zamlı Maaş'
FROM Personel
WHERE BolumNo IN(1,2,4)
--Zamlı maaşları göster
SELECT Maas AS 'Asıl Maaş', Maas+1000 AS 'Zamlı Maaş'
FROM Personel
--İsme göre aynı olanları eler
SELECT DISTINCT isim FROM Personel
SELECT DISTINCT isim FROM Personel
--İlk 3 harfi meh olan tüm verileri getirir.
SELECT * FROM Personel
WHERE LEFT(Ad,3)='meh'
SELECT * FROM Personel
WHERE LEFT(Ad,3)='meh'
--Soyadının son harfi y olanları getirir.
SELECT * FROM Personel
WHERE RİGHT(Soyad,1)='y'
Sistem Tanımlı Fonksiyonlar ile İşlemler
SELECT * FROM Personel
WHERE RİGHT(Soyad,1)='y'
Sistem Tanımlı Fonksiyonlar ile İşlemler
--Herhangi bir sütundaki veri sayısını getirir.
SELECT COUNT(Tc) FROM Personel
SELECT COUNT(Tc) FROM Personel
--NULL olanları saymaz
SELECT COUNT(DogumTarihi) FROM Personel
--Toplam sayıyı getirir.
SELECT COUNT(*) FROM Personel
WHERE isim<>'Mehmet'
SELECT COUNT(*) FROM Personel
WHERE isim<>'Mehmet'
--Toplam Maaşı Getirir.
SELECT SUM(Maas) FROM Personel
WHERE maas BETWEEN 1000 AND 2000
SELECT SUM(Maas) FROM Personel
WHERE maas BETWEEN 1000 AND 2000
--Ortalama Maaşı getirir.
SELECT SUM(Maas)/COUNT(*) FROM Personel
SELECT AVG(Maas) FROM Personel
SELECT SUM(Maas)/COUNT(*) FROM Personel
SELECT AVG(Maas) FROM Personel
--BolumNosu en büyük olan kaydı getirir.
SELECT MAX(BolumNo) FROM Personel
SELECT MAX(BolumNo) FROM Personel
--Bolumnosu en küçük olan kaydı getirir.
SELECT MIN(BolumNo) FROM Personel
--4tane 'a' yeni tek 'a' yazar yani veriyi değiştirip gösterir.
SELECT isim AS Ad, REPLACE(soyisim,'aaaa','a') AS Soyad
FROM Personel
SELECT MIN(BolumNo) FROM Personel
--4tane 'a' yeni tek 'a' yazar yani veriyi değiştirip gösterir.
SELECT isim AS Ad, REPLACE(soyisim,'aaaa','a') AS Soyad
FROM Personel
--Len o sütunun karakter uzunluğunu getirir.
SELECT Tc,Ad, Len(Ad) AS 'İsim Uzunluğu' ,Soyad,
Len(Soyad) AS 'Soyad Uzunluğu' FROM Personel
--Eğer cast edilmezse iki farklı tür birleştirilemez
--cast değişken tülerini değiştirmek için kullanılır.
SELECT CAST(Tc as varchar) + ' ' + Ad AS 'Olcakmi'
FROM Personel
SELECT Tc,Ad, Len(Ad) AS 'İsim Uzunluğu' ,Soyad,
Len(Soyad) AS 'Soyad Uzunluğu' FROM Personel
--Eğer cast edilmezse iki farklı tür birleştirilemez
--cast değişken tülerini değiştirmek için kullanılır.
SELECT CAST(Tc as varchar) + ' ' + Ad AS 'Olcakmi'
FROM Personel
--Yazı tipindeki verileri bölme. 2.parametre
--başlangıç harfinin sırası
--3.parametre kaç harf göstericeğini sorar.
SELECT SUBSTRİNG(Ad,1,1) FROM Personel
--başlangıç harfinin sırası
--3.parametre kaç harf göstericeğini sorar.
SELECT SUBSTRİNG(Ad,1,1) FROM Personel
--Soyisimlerin başındaki boşluklar silinir.
SELECT LTRİM(Soyad) FROM Personel
SELECT LTRİM(Soyad) FROM Personel
--Soyismin sonundaki boşlukları siler.
SELECT RTRİM(Soyad) FROM Personel
SELECT RTRİM(Soyad) FROM Personel
Gruplama İşlemleri
--Kesinlikle kullanılmaz yanlış bir ifadedir.
SELECT Ad,Soyad FROM Personel
GROUP BY BolumNo
SELECT Ad,Soyad FROM Personel
GROUP BY BolumNo
--having group by ile kullanılır.
--yani gruplama işleminden sonra da bir koşul konulacaksa
--having kullanılır.
SELECT BolumNo, COUNT(*) AS 'Çalışan Sayısı',
SUM(Maas) AS 'Toplam Maaş' --,AVG(Maas) AS 'Ortalama Maaş'
FROM Personel
WHERE Maas1000
ORDER BY AVG(Maas) ASC
--yani gruplama işleminden sonra da bir koşul konulacaksa
--having kullanılır.
SELECT BolumNo, COUNT(*) AS 'Çalışan Sayısı',
SUM(Maas) AS 'Toplam Maaş' --,AVG(Maas) AS 'Ortalama Maaş'
FROM Personel
WHERE Maas1000
ORDER BY AVG(Maas) ASC
Hiç yorum yok:
Yorum Gönder