Verification: 6ab19e626810e10c MSSQL Select İşlemleri - Hikmet İSKİFOĞLU

MSSQL Select İşlemleri

MSSQL Select İşlemleri

93 Views

Programlamanın her alanında olmazsa olmazımız veritabanı konusuna işliyoruz. Mssql ile select işlemlerini bol örnekle tekrar etmenizi tavsiye ederim.

Select, en basit gözüken sql ifademiz gibi gözüksede incelikleri bilindiği taktirde hem kullanıcıyı, hemde yazılımcıyı oldukça rahatlatan, işlemleri özellikle büyük veriler söz konusu iken büyük ölçüde iyileştirebilecek detaylara sahiptir. En basit kullanımdan başlayarak konuyu biraz detaylandıralım.

Temel kullanım olarak aşşağıdaki ifadeyi kullanabiliriz. Bu sorgumuzun meali personel tablomda ne var ne yoksa bana getir demektir. İlk bakışta sorun yok gibi gelsede işimize yarayan yaramayan, personel tablosundaki tüm verileri getireceği için duruma göre aşırı yük bindirdiği vakitlerde gelecektir.

select * from personel

Sorgumuzu biraz daha iyileştirmek için çok kullanılan tablo belirtme olayına bakalım.

select ad,soyad from personel

select ifadesi bize genelde “seç” olarak çevrilse de aslında tam olarak o şekilde bir anlam taşımıyor . Daha çok ayıkla ve getir gibi bir anlamı var desek daha aklılda kalıcı ve uygun olacaktır. İfademizin ilk kısmı tamam sonrasındaki * yerine yazdığımız ad ve soyad ise bizim çekmek istediğimiz kolonların adı oluyor.

Birleştirirsek ad ve soyad kolonlarını ayıkla ve getir demiş oluyoruz şimdiye kadar öğrendiklerimizle. Eee bunları nereden getireceğimizi belirtmedik daha. İşte orasıda from personel oluyor. Yani tam anlamı: personel tablosundaki ad ve soyad kolonlarını ayıkla ve getir.

Where komutu ile koşullu bir select sorgusu yapalım, biraz daha detaya inelim.

select personel_no,ad,soyad,cinsiyet from personel where cinsiyet='E'

Where komutu ise bize filtreleme olanağı sağlıyor. Where den sonra belirttigimiz kolon ve istediğimiz değerin olduğu veriler bize gösteriliyor.

select ad,soyad,dogum_yeri from personel where dogum_yeri=2 or dogum_yeri=3

where komuntunu kullanmayı öğrenmişken and ve or kullanımına da bakalım. Bildiğiniz üzere ‘or’ yada gibi bir anlam taşımakta, sorgudan da anlaşılacağı gibi sorgumuz; “personel tablosundan, dogum_yeri=2 yada dogum_yeri=3 olan kayıtların ad,soyad ve dogum_yeri bilgilerini ayıkla ve getir” işlemi yapıyor.

select ad,soyad,dogum_yeri,cinsiyet from personel where dogum_yeri=5 and  cinsiyet='K'

and kullamı ise ve anlamında bir koşul taşımakta. Birden fazla koşula bağlı olarak verilerimizi getirmek için kullanıyoruz.

Önerilen Yazı :  MSSQL Fonksiyon Kullanımı

Bu iki koşulu birleştirip güzel bir kullanım yapalım.

Örnek:5. Bölgede gece vardiyasına çıkacak olan personel işten ayrıldığı için, tüm erkek personellerden birisi veya hem kadın hemde birim no’su 1 olan personellerden birisi gece vardiyasına yazılacak. Filtrelenecek olan tüm bu personellerin sql kodunu yazınız.

Kodu ve çıktısını ben bırakıyorum buraya bunun için biraz siz düşünün bakalım 🙂 sorun yaşarsanız yorum atıp destek alabilirsiniz.

select ad,soyad,birim_no,cinsiyet from personel where cinsiyet='E' or( birim_no=1 and  cinsiyet='K')

Sorgularımız (MSSQL) Microsoft Sql Server Management Studio üzerinde yazılmıştır.

Örnek Veritabanımız


Veritabanı’nı verileriyle beraber oluşturmak için kodları:

Bir cevap yazın

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