"Select" İfadesi

Eyl 08, 2013

Microsoft SQL Server ortamında veri almanın temeli "SELECT" Transact-SQL ifadesidir. Sorgu Çözümleyici (Query Analyzer) SQL penceresi bölümüne doğrudan bu ifadeleri girilebildiği gibi diyagram veya "Grid Pencereleri" kullanılarak, bu ifadelerin Sorgu Çözümleyici tarafından oluşturulması da sağlanabilir. "Select" ifadesi birden çok yan tümceye sahiptir. Söz dizimi karmaşık gibi görünse de temel yapısı çok basittir.

SELECT [ Top n [ PERCENT ] ] sütun isimleri
FROM kaynak tablo veya görünüm ismi
WHERE arama koşulu

Sorgu Çözümleyici'de önceden hazırlanmış bir tablo açılır. Araç çubuğundan SQL Penceresi (SQL Pane) simgesi tıklanarak Sorgu Çözümleyici SQL Penceresi bölümü açılır.

"Select" ifadesinin kullanılan temel yapısı "SELECT sütun listesi FROM kaynak listesi" şeklindedir.

Bir tabloda, bütün verilerin görüntülenmesi "Select" ifadesinden sonra yıldız(*) karakteri koyularak sağlanabilir. "SELECT * FROM tablo_ismi" ifadesi, bir tablodaki bütün verilerin sonuç penceresinde görüntülenmesini sağlar. Bu basit kullanımın yanında çoğunlukla sorgunun, yalnızca seçilen satırları vermesini istenir. Bunu sağlamak için, yıldız(*) karakteri yerine, seçilen kolonların isimleri yazılır. 

Örnek:  Sorgu Çözümleyici'de açılmış olan personel tablosunda sadece Adi ve Soyadi kolonlarının görüntülenmesi istenmektedir.

SQL Penceresi bölümüne SELECT Adi, Soyadi FROM personel ifadesini yazıp Çalıştır (Run) komutu tıklanırsa, personel tablosundan sadece Adi ve Soyadi satırları görüntülenir.



"Where" ifadesi ile tabloda olan bir veri hakkındaki bilgilere arama ile ulaşılabilir. Aşağıda görüldüğü gibi personel tablosunda, Soyadi sütununda köksal satırını bulup, aynı satırda, Adi sütunundaki değer sonuç penceresinde görünmektedir.



"SELECT" ifadesinde Top n [ PERCENT ] yan tümcesi de bazen kullanışlı olur. Bu ifade kaç tane satırın görüntüleneceğinin belirlenmesini sağlar. 

Örnek olarak; "SELECT TOP 3 Adi FROM personel" ifadesi personel adlı tablodan Adi sütunundaki ilk üç veriyi görüntüler. 

Belli sayıda satırı belirtmenin yanında, satırların belli bir yüzdesini veren Top n PERCENT yan tümcesi de kullanılabilir.

"SELECT Top 50 PERCENT * FROM personel" ifadesi, personel tablosundaki bütün satırların ilk yüzde ellisini görüntüler.

SELECT İfadesi İle Takma Ad ( Alias ) Oluşturmak:

Varsayılan (Default) olarak sorgu içindeki bir sütun, görünüm ile aynı ada sahiptir. Sütun adı uzun veya karmaşık olduğunda, sorgulamada bu sütun adları yerine, onları temsil eden bir Takma Ad  kullanmak yararlıdır. Bu "Grid penceresi" bölümü kullanılarak yapılabileceği gibi "select" ifadesi de, sorgu içindeki bir sütunu yeniden adlandırma olanak tanır. ( Takma ad kullanmak, sorgu içindeki sütunun adını değiştirir. Tablo içindeki sütunun adı değişmez. )

Öncelikle bu işlem "Grid penceresi" bölümünü kullanarak yapılsın. Query Analyzer ( Sorgu Çözümleyici )' da " Grid Penceresi " bölümü açılır. Sütun (Column)bölümünden görüntülenmesi için sütun adı seçilir. Takma Ad bölümüne sorguda kullanılacak takma ad yazılır.

Personel tablosunda Telefon isimli sütunun ismini sorgulamada kullanmak üzere Tel olarak değiştirilsin. Çalıştır (Run) butonu tıklandığında, aşağıdaki gibi Telefonsütununun ismi Tel olarak değişecektir.



Şimdi bu işlem "SELECT" ifadesi ile yapılabilir.

  1. SQL Penceresi açılır.
  2. Takma ad oluşturan "SELECT" ifadesinin genel yapısı "SELECT sütun_ismi AS takma_ad FROM kaynak_adı" şeklindedir.
  3. SQL Penceresi'ne "SELECT Telefon AS Tel FROM personel" yazılarak Çalıştır butonu tıklandığında Telefon sütununun ismi, sorgulamada Tel olarak değişmiş olacaktır.



Bileşik Sütunlar Oluşturmak:

Sütunların dayandığı tablo ya da görünümlerdeki verileri göstermenin yanında, sorgu sütunlarının birleşimini de içerebilir.

Bu işlem Grid Penceresi'ni kullanarak gerçekleştirilir. SQL Penceresi açılır. Bu işlemi gerçekleştiren Transact-SQL ifadeleri incelenir. 

Aşağıda görüldüğü gibi personel tablosunda Adi ve Soyadi sütunları "+" imini kullanarak birleştirilir ve Tanımlama adında bir takma ad ile yeni bir sütunda görüntülenir.