Harun Reşit Zafer

bâki kalan bu kubbede bir hoş sadâ imiş

SQL 11: AS Sözcüğü ve Takma İsimler (Alias)

Schema SQL
Bu yazı SQL’in daha karmaşık bölümlerine geçmeden önceki son yazı. Bundan önceki 10 (aslında 11) yazıda SQL için temel sayılabilecek konuları ele aldık. Bu yazıda ise karmaşık SQL sorgularında çok işimize yarayacak olan “takma isimler” (alias) konusunu işleyeceğiz. Takma isimler önceki konular göz önünde bulundurulduğunda çok da gerekli gibi görünmeyebilir ancak bundan sonraki konularda ne kadar gerekli hatta bazı durumlarda zorunlu olduğunu göreceğiz.

Not: Bu arada diğer SQL derslerine buradan ulaşabilirsiniz

Not: Alias kelimesi için sözlükte bir çok karşılık var. Bana “takma isim” uygun gibi geldi, ama daha iyi bir önerisi olan varsa yazıyı güncelleyebilirim.

Örnekler için aşağıdaki uyeler tablosunu kullanacağız.

uye_adi isim soyisim e-posta cinsiyet
hrzafer Harun Reşit Zafer [email protected] E
derya.z Derya Zaimoğlu [email protected] K
meryem1990 Meryem Arkadaş [email protected] K
eaydin Emir Aydın [email protected] E
denizeri Levent Denizeri [email protected] E

Gerek tablolara gerekse alanlara takma isim verebiliriz. Alanlar ile başlayalım:

Sorgu: Kullanıcıların isim ve soyisimleri

SELECT isim AS 'ad', soyisim AS 'soyad' FROM uyeler
ad soyad
Harun Reşit Zafer
Derya Zaimoğlu
Meryem Arkadaş
Emir Aydın
Levent Denizeri

Gördüğünüz gibi sonuç kümesinde ilgili alanlar takma isimleri ile geldiler. Daha önceki yazılarda da sonuç kümesinin de aslında bir tablo olduğunu belirtmiştim. Bunu zihnimizin bir köşesine yazalım. Burada AS (ez diye okunur) sözcüğü “olarak” anlamında kullanılmış, isim AS ‘ad’ dediğimizde “isim alanını ‘ad’ olarak getir” demiş oluyoruz kısacası.

Şimdi de uyeler tablomuza takma isim verelim.

Sorgu: İsmi Derya olan bayanlar (Derya isminin her iki cinsiyet için de kullanılabildiğini hatırlatalım :) )

SELECT u.isim , u.soyisim FROM uyeler u WHERE u.cinsiyet='K' AND u.isim='Derya'
isim soyisim
Derya Zaimoğlu

 


Burada altını çizmek istediğim 2 husus var:

1-) Tablolara takma isim verirken AS sözcüğünü kullanmak zorunda değiliz. Sorguyu aşağıdaki gibi de yazabilirdik ama genelde bu teâmül uygulanır ve AS yalnızca alanlar için kullanılır.

SELECT u.isim , u.soyisim FROM uyeler AS u WHERE u.cinsiyet='K' AND u.isim='Derya'

2-) Dikkat ederseniz tablolara verdiğimiz takma adlar sonuç kümesinde bir değişikliğe yol açmıyor. Yalnızca SQL sorgumuzda bu kısaltmaları (takma isimleri) kullanıyoruz. Şu ana kadar sorgularda yalnızca bir tablo kullandığımız için çok da anlamlı gelmemiş olabilir bu örnekler. İlerleyen yazılarda takma isimlerin (alias) sebeb-i hikmeti daha iyi anlaşılacaktır.

Herkese Kolay Gelsin

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedInPrint this pageEmail this to someone

5 Yorum

  1. hocam iyi günler öncelikle sql notlarınızdan çok faydalandım teşekkür ederim. bnm bir sorum olacaktı.
    örneğin maas tablosunda minumum ve maximum maaslarının ortalamasını bulan sql kodunu nasıl yapabilirz? yardmcı olursanız sevinirim..

  2. Allah razı olsun hocam :)

  3. AYHAN CACAN

    28 Mart 2015 at 13:04

    iyi günler
    SQL 11: AS Sözcüğü ve Takma İsimler (Alias) konusunda yazmış olduğunuz
    SELECT isim AS ‘ad’, soyisim AS ‘soyad’ FROM üyeler
    sorgu satırı tamam da
    SELECT u.isim , u.soyisim FROM uyeler u WHERE u.cinsiyet=’K’ AND u.isim=’Derya’
    satırındaki U takısını anlayamadım. Biraz açar mısınız?
    Teşekkürler…

    • Burada uyeler tablosunun ismini u kısaltıyoruz. Bu özellikle aynı alan adlarına sahip 2 tabloyu JOIN ederken işe yarıyor. Buradaki örnek pek anlamlı gelmemiş olabilir. Derslerin devamındaki JOIN yazılarını okumanızı tavsiye ederim.

  4. Galiba bu ALIAS
    MS Access’teki ‘Resim Yazısı’..

Bir Cevap Yazın

E-posta adresiniz yayınlanmayacak

*

© 2016 Harun Reşit Zafer

Temayı tasarlayanAnders NorenYukarı ↑