T-SQL'de Değişkenler
Dışarıya çıkmadan Microsoft SQL Server üzerinde T-SQL kullanarak bir çok programla dilinin yaptığı hemen hemen her işi yapabiliriz.
Değişkenler
Birçok programlama dilinin en önemli kavramlarından biridir. Bir işlem üzerinde çalışırken kullandığımız ifadeleri bir değişkene atarız ve bu değişkenlerle işlemlerimize devam ederiz.
T-SQL’de bir değişken @ işareti ile tanımlanır. Ve her değişkenin bir ifade ile tanımlanması gerekmektedir.
• DECLARE: Değişken tanımlamada kullanılır.
• SET: Değişkene değer atamada kullanılır.
• AS: Değişkenin veri tipini belirlemede kullanılır.

Değişken tanımladıktan sonra mevcut değişkenleri standart programlama dillerinde yaptığımız gibi yeni değişkene atayabiliriz. Eğer değişkene değer atamazsak o değişken NULL değerde olur. Ayrıca NULL değer ile herhangi bir matematiksel işlem yaptığımızda sonuç yine NULL olur.


* 2. görselde SAYI1 değişkeni tanımlandı fakat — ile yorum satırına alındığı için SAYI1 değişkeninin değeri NULL oldu.
SET komutu kullanmadan değişkenin varsayılan bir değerinin olmasını istiyorsak tanımladığımız değere = koyarak değer atayabiliriz ve istersek sonrasında SET kullanarak bu değeri değiştirebiliriz ve hafızada güncellenen son değeri görürüz.

Değişkenleri sadece matematiksel ifadelerde kullanmayız başka veri tiplerinde de kullanırız. String ifadeleri tanımlamada örneğin varchar() veri tipini kullanabiliriz.

Sayısal ifadelerde NULL ile yapılan tüm işlemlerin sonucunun NULL olduğunu belirtmiştik. String ifadelerde NULL değer ile yapılan işlemin sonucu NULL‘ dır.

String ifadeye varsayılan değer atama işlemi sayısal ifadelerdeki gibidir.

DATE ifadelerinde birçok DATE fonksiyonu kullanarak işlemlerimizi gerçekleştirebiliriz. Örneğin DATETIME şeklindeki bir tarih ifadesini parçalayarak başka değişkenlere atayabiliriz.


SQL sorgusundan gelen sonuçları nasıl değişkene atayabiliriz ?
1) SELECT sorgusu içerisine kolon bilgisini atama ile.

2) SET ile atama yapma

3) SELECT ile aynı sorguda birden fazla değişken tanımlayıp değer atayabilirken SET ile ayrı ayrı satırlarda tanımlamamız gereklidir. (Dezavantaj)

Bir değişken değerini SQL sorgusundaki parametreye nasıl atayabiliriz ?

* Örnekte Ankara şehrinin bilgileri PARAMETRE_CITY adlı değişkene atandı ve sonrasında CITY alanından bu değişken ile bilgilerin getirilmesi sağlandı.
