Sql SELECT komutu
Select komutu ile veritabanından istenilen kriterlere göre veri getirilir.
Yazılımı:
SELECT [DISTINCT] {*,column [alias] ,….}
FROM Tablo
[WHERE koşullar]
[ORDER BY {column,expr} [ASC|DEXC] ] ;
SELECT :Seçilen kolonları alır.
DISTINCT :Belirtilen kolondaki aynı değerlere sahip verilerden sadece birini alır. Örneğin personel kodu xxx olanın personel adı gibi.
Alias :Kolon adlarının daha açık olması için tanımlanır.
FROM table :Belirtilen tabloyu açar.
WHERE :Belirli kriterler koşullar oluşturulur. Tablolar arasında birleştirmeler yapılabilir.
ORDER BY :Seçilen kolona göre sıralı kayıt getirir.
ASC :Artan sırada listelenir. Varsayılan budur.
DESC : Azalan sırada listelenir. Varsayılan budur.
* : Tüm kolonlar seçilmiş anlamındadır.
Listelemede rakamlar sağa yanaşık, karakterler sola dayalı gözükür. Kolon adları büyük harf görüntülenir.Aritmatik işlemler kullanılabilir (+,-,/,*). Örneğin;
Select maas+maas*0.10 From Personel_Table;
Bazen bir matematiksel işlemler daha uzun veya daha karmaşık olabilir. Fonksiyon tanımlayarak kolona sorgulatıp bir sonuç üretebiliriz. Matematiksel işlemlerde öncelik sırası;
- Parantezler (,)
- *,/,+,-
- soldan sağa doğru öncelik sırası,
şeklindedir.
Column Alias : Kolon başına açıklayıcı isim verilebilir. Tırnak işaretleri (“) ile açıklayıcı kelime belirtilir. Tek kelime için ” işareti kullanılmasada olur. Örneğin;
Select ad AS “Adı” From Personel_Table;
Concatenation Operator: Birden fazla stringi veya kolonu yan yana birleştirip listelemek için kullanılır. İfadeler string olmalıdır. Zaten karakter ve tarih formatındaki değerler tırnak( ‘ ) işaretleri içerisinde belirtilir. Örneğin;
Select ad||’ ‘ ||soyad AS “Adı Soyadı” From Personel_Table;
Null : Değeri hiç girilmeyen kolonlar NULL değerini alırlar. NULL sıfır veya boşluk karakteri değildir. Yokluk demektir. Bir rakam ile NULL değer üzerinde matematiksel işlemler yapılamaz.
NVL Fonksiyonu: Null değeri yerine yeni değer atar. Alan tipi ne turde ise alacağı değer o türde olmalıdır.
Yazılımı:
NVL (null_değeri_alan,yeni_değer)
Örneğin;
NVL(Maas,0); –Maas kolonundaki null değerlerin yerine sıfır atar.
veya NVL(Ad,’ ‘); — Ad kolonundaki null değerlerin yerine bos karakter atar.
En önemli kullanım amacı hesplamalara işlemin yarıda kesilmesini engellemek içindir. Örneğin maasa zam miktarı eklensin. Ama bazı personele zam yapılmadığı varsayılırsa bu kişiler icin zam kolon değeri null’dur. Buna göre;
SELECT maas+NVL(zam,0) From Personel_Table;
Tab : Tüm tabloların adlarının saklandığı alandır. Örneğin tüm tabloların listesini vermek için aşağıdaki iki yazılımı da kullanabiliriz.;
Yazılımı;
SELECT * From Tab;
SELECT table_name From user_tables;
Leave a reply