TSQL _ Select
Merhaba Arkadaşlar . Bu yazımızda TSQL den bahsetmek istiyorum. Veritabanı programları ile uğraşanların yada biz programcıların sürekli kullandığı hatta bazen baş belası olabilen bu SQL neymiş ona bakalım.
SQL (Structured Query Language) yani Yapılandırılmış Sorgulama Dili anlamına gelen veritabanı sorgulama dilidir. SQL, düzeltilmesi veya değiştirilmesi istenen bilgileri açıkça belirtmeye izin veren ve yerine getirilebilecek başlıca işlemleri tanımlamamızı sağlayan bir komut takımıdır
Sql deki kodları :
Veri İşleme Dili – DML (Data Manipulation Language )
Veri Tanımlama Dili – DDL (Data Definition Language)
Veri Kontrol Dili – DCL(Data Control Language)
Olarak gruplayabiliriz.
Bu gruplar içersinde hangi kodlar var peki?
Veri İşleme Dili – DML (Data Manipulation Language )
SQL Veri İşleme Dili veri girmek, değiştirmek, silmek ve verileri almak için kullanılan DML komutlarının tümüdür.
SELECT : Veri seçmek
DELETE : Veri silmek
UPDATE : Veri güncellemek
INSERT : Veri girmek
Veri Tanımlama Dili – DDL (Data Definition Language)
SQL Veri Tanımlama Dili verilerin tutulduğu nesneler olan tabloların yaratılmasını, silinmesini ve bazı temel özelliklerinin düzenlenmesini sağlar.
CREATE TABLE : Yeni bir tablo yaratmak
ALTER TABLE : Tabloda değişiklik yapmak
DROP TABLE : Tabloyu silemek
CREATE INDEX : Tabloda dizin oluşturmak
Veri Kontrol Dili – DCL(Data Control Language)
SQL Veri Kontrol Dili bir veritabanı kullanıcısı veya rolü ile ilgili izinlerin düzenlenmesini sağlar.
GRANT :Kullanıcıya yetki vermek
DENY:Kullanıcı, grup veya rolü herhangi bir eylem için engeller.
REVOKE:Daha atanmış olan yetki veya engeli kaldırır.
Veritabanında Arama İşlemleri
Bir veritabanı içersindeki bilgilerimiz arasında belli kriterlere uygun yada bir rapor şeklinde bir arama gerçekleştirmek istiyorsak kullanmamız gereken kod Select olmalıdır.
Select ifadesi bir tablodan verileri seçmek için kullanılır. Elde edilen veriler sonuç kümesi olarak adlandırılır ve yine bir tablo görüntüsü şeklinde görüntülenir.
Söz dizimi:
Tüm alanları görüntülemek istemediğimiz zamanlarda kolon adı belirterek istenilen bilgiler çekilebilir.
SELECT <görüntülenmek istenen kolonlar> FROM <tablo adı>
Tüm alanları göstermek istediğimiz durumlarda kolon adı yerine * kullanılır.
SELECT * FROM <tablo adı>
Şimdi birlikte bir örnek yapalım. Northwind veritabanı içersinde bulunan herhangi bir tablonun bilgilerini önce tablo ismi ile sonra * ile çağıralım.
Verilerimizi tablo ismi ile yada * simgesiyle hepsini getiriyoruz. Süper ama bir sorun var yada sorundan çok bir eksik demeliyiz belkide belli kriterlere uyan bilgileri getirmek istediğimde ne yapmam gerekir ?
Böyle bir durumdada yardımımıza WHERE yantümcesi koşuyor. WHERE yantümcesi görüntülemek istediğimiz verileri belirli bir kritere göre seçebilmemizi sağlar.
Yazımı
SELECT <sütun adı> FROM <tablo adı> WHERE <koşul(lar)>
Yani WHERE yantümcesi diyor ki bana istediğin kriteri söyle NERDE eşleşen varsa alayını getireyim sana diyor. Ama bu kriterleri hangi operatörlerle sağlarız birde onu belirtelimki sadece eşittir işaretinden ibaret olduğu anlaşılmasın.
İşte WHERE yantümcesi ile kullanabileceğimiz operatörler
Bizde teşekür edip bir örnek yaparak Where yantümcesi istediğini veriyoruz.
Bu kez müşteriler tablosundayız ve Madrid deki müşterilerimizi görmek istiyoruz.
Nasıl Where yantümcesi işini iyi yapıyor değilmi 😀
WHERE yantümcesinin operatörlerinden bahsetmiştik orada herşey güzel anlaşılır matematiksel şeyler var ama 2 operatör varki kafa karıştırabilir. LIKE ve BETWEEN bunlarında nasıl kullanıldığına kısaca deyinelim
LIKE
LIKE kelimesi sütundaki değerlerin, joker karakterler kullanılarak oluşturduğumuz bir arama koşulu ile karşılaştırılmasını sağlar.
SELECT <kolon adı> FROM <tablo adı>
WHERE <aranacak sütun> LIKE <kriter>
Örnek arama koşulları:
LIKE ‘BR%’ İlk iki harfi BR olan tüm kayıtlar
LIKE ‘Br%’ İlk iki harfi Br olan tüm kayıtlar
LIKE ‘%een’ Son üç harfi een olan tüm kayıtlar
LIKE ‘%en%’ İçerisinde en ifadesi geçen tüm kayıtlar
LIKE ‘_en’ Son iki harfi en olan üç harften oluşan tüm kayıtlar
LIKE ‘[CK]%’ C veya K harfleriyle başlayan tüm kayıtlar
LIKE ‘[S-V]ing ing ile biten ve ilk harfi S ile V harfleri arasında olan dört harfli herhangi kelime
LIKE ‘M[^c]%’ M ile başlayan ikinci harfi c olmayan tüm kayıtlar
BETWEEN..AND
BETWEEN … AND operatörü 2 değer ile belirtilen aralığı sınar. Bu değerler sayı, metin veya tarih olabilir.
SELECT <kolon adı> FROM <tablo adı>
WHERE <sütun adı> BETWEEN <değer 1> AND <değer 2>
Umarım faydalı olmuştur bir başka yazıda görüşmek dileği ile ….
M.Zeki Osmancık