SQL SELECT Kullanımı (Sorgu Yazmak)

Bu yazımızda SQL SELECT ile veri tabanlarındaki tabloları görüntülemek için kullanırız. Nasıl sorgu yazdığımızı örneklerle öğreneceğiz.

ÇOK KULLANDIGIMIZ SQL TERİMLERİ

  • Select : seçmek
  • From  : den anlamında
  • *         : hepsi anlamında
  • Use     : database aktif etmek için kullanırız.
  • as        : sanal sutuna isim vermek için kullanırız.
  • top     : bu komut belirli sayıdaki bir şeyi çekmede kullanırız.
  • like     : gibi manasında kullanılıyor..
  • alt tire jokeri(_) tek char karakterini ifade eder..
  • % işareti: birden fazla char karakterini ifade eder.
  • Order by : sıralama yapmak için
  • Count(): saydırma yapmak için kullanılan komut.

NOT : Örneklerimiz yaparken northwind örnek veri tabanını kullanacağız. northwind veri tabanı öğrenme aşamasında kullanılmak için yapılmış veri tabanıdır. T-SQL ile yazacağız.

*NORTHWIND database ndeki terimler

Employees: Çalışanlar   —     Customer: Müşteri  —   Orders: Sipariş —   Order Details : Sipariş Detayları,  Products: Ürünler  —    Region: Bölge, kuzey, güney   —  shippers : nakliyatçılar   —   suppliers : satıcılar territories : saha, şehir  —   quantity : miktar, adet   

Kullanım Şekli : Tüm tablo için..

Select * from İstenenTabloİsmi    

Burada select ile from arasına yazıdıgımız değerler bize gösterilmesini istediğimiz tablo veya sütunların adi. select ile from arasında Yalnızca * işareti varsa from’dan  sonra İstenenTabloİsminin tamamını çeker. From dan sonra yazdığımız tablo ismi ise işlem yaptığımız tablodur.

Kullanım Şekli : Tablodaki istediğimiz sütunlar için..

select KullaniciAdi, Sifre from Kullanicilar 

Burada ise hepsi değil de select ile from arasına yazdığım KullaniciAdi, Sifre sütunları çeker.

Örnek 1:

select * from dbo.Products

Products tablosunun hepsini çeker…

Örnek 2:

select ContactName, CompanyName from Customers

Customers tablosundan  ContactName, CompanyName sütunlarını çeker…

Sütunlara Sanal İsim Vermek

Örnek 1:

select ProductName as 'Ürün Adı', UnitPrice as 'Birim Fiyat' from Products 

ProductName sutununa çektiğimiz sırada Ürün Adı ve UnitPrice sütununa çektiğimiz sırada Birim Fiyat diye isim vererek çağırır.

Örnek 2:

select ProductName 'Ürün Adı', UnitPrice 'Birim Fiyat' from Products 

Yukarıdaki örneğin aynısını yapar yani  ” as” kullanmadan da aynı sonuca ulaşırız…

Örnek 3:

select ProductName [Ürün Adı], UnitPrice as 'Birim Fiyat' from Products

Yine aynı işlemi yapar. Burada “as” veya  ‘ ‘ yerine  [] kullandığımızı öğrenmiş olduk…

SQL select ile top komutu Kullanımı

Bir sorguda ilk belirli sayıdaki verileri çekmek için kullanırız.

Örnek 1:

select top 10 ProductName from Products

Products tablosundaki ProductName sutunun ilk 10 satırını çağırır…

Örnek 2:

select top 3 * from Products 

Products tablosunun ilk 3 satırını çağırır…

İç İç Sorgular Yazmak ( select(select) )

— kural : içteki sorgu sadece 1 hücre döndürebilir

— kural : iç select dış selecte bağlanmalı

Örnek 1:

select (select ContactName from Customers where CustomerID = ord.CustomerID) as 'Müşteri İsmi', (select sum(Quantity)  from [Order Details] where OrderID = ord.OrderID) as 'Ürün Adet', ord.* from Orders as ord 

Amacımız Orders tablosunun öncesine iki sütun ekleyip ve bunlara da ContactName ile Quantity toplamını ekleyerek çekmek.

Örnek 2:

select (select ProductName from Products where ProductID = [Order Details].ProductID) as 'Ürün Adı', (select UnitsInStock from Products where ProductID = [Order Details].ProductID) as 'Stok', [Order Details].*  from [Order Details]

Amacımız Orders Details tablosunun öncesine ProductName ile UnitsInStock sütununu ekleyerek çekmek.   1.Parantez içinde Products tablosundaki ProductID si ile OrderDetails Tablosundaki ProductID eşleştirip ProductName sütununu ‘ürün adı’ sanal isminde çektik.  
2.Parantez içinde Products tablosundaki ProductID si ileOrderDetails Tablosundaki ProductID eşleştirip UnitsInStock sütununu ‘stok’ sanal isminde çekmek.

SQL select kullanımı önemli bir konudur. Ondan dolayı buradaki örnekleri kendiniz çoğaltarak bu konuyu iyi kavrayın.

Başka bir yazımızda görüşmek üzere…

Leave a Reply